POJ 1305 Fermat vs. Pythagoras【勾股数】
题意: 让你找出1 到 n 之间所有可以构成 x^2 +y^2 =z^2 的个数,且 x,y,z互质。
分析: 数论中有本原勾股数组的公式
x=2*s*t,y=s*s-t*t,z=s*s+t*t;
其中s>t>=1而且gcd(s,t)==1
#include<stdio.h> #include<string.h> #include<math.h> int gcd(int y,int x) {return x==0?y:gcd(x,y%x); } int v[1000001]; int main() {int n,x,y,z,t1,t2,i,j,k;while(scanf("%d",&n)!=EOF){t1=t2=0;for(i=0;i<=n;i++)v[i]=0;for(i=1;i*i<=n/2;i++)for(j=i;j*j<=n;j++){x=2*i*j;y=j*j-i*i;z=i*i+j*j;if(z>n)break;if(gcd(x,y)==1){t1++;for(k=1;k*z<=n;k++)v[k*x]=v[k*y]=v[k*z]=1;}}for(i=1;i<=n;i++)if(!v[i])t2++;printf("%d %d\n",t1,t2);}return 0; }
转载于:https://www.cnblogs.com/dream-wind/archive/2012/05/03/2481243.html
POJ 1305 Fermat vs. Pythagoras【勾股数】相关推荐
- poj 1305 Fermat vs. Pythagoras(毕达哥斯拉三元组)
毕达哥斯拉三元组,即勾股数组. 勾股数组参考资料:http://blog.csdn.net/magicnumber/article/details/6410043 s的取值范围:3≤s≤√(2n-1) ...
- 勾股数(毕达哥拉斯三元组)
勾股数(毕达哥拉斯三元组) 勾股数:可以构成一组直角三角形边长的三个正整数. eg: 3 4 5 勾股数的规律: 1)任何大于1的正奇数a=2k+1,其平方t=a^2仍为奇数,且将平方数拆成两个相邻的 ...
- 法里数列和本原勾股数
法里数列 性质1:连续三项为 b a . b + d a + c . d c \frac ba .\frac{b+d}{a+c}. \frac dc ab.a+cb+d.cd,且分子分母满足是互 ...
- 数论概论学习笔记(一)——勾股数
版权声明:本文为博主原创文章,未经博主允许不得转载. Pythagoras theorem(勾股定理) 一个直角三角形中,两个直角边边长的平方加起来等于斜边长的平方. 如果设直角三角形的两条直角边长度 ...
- C语言 · 勾股数
勾股数 勾股定理,西方称为毕达哥拉斯定理,它所对应的三角形现在称为:直角三角形. 已知直角三角形的斜边是某个整数,并且要求另外两条边也必须是整数. 求满足这个条件的不同直角三角形的个数. [数据格式] ...
- 【c语言】蓝桥杯算法提高 勾股数
问题描述 勾股数是一组三个自然数,a < b < c,以这三个数为三角形的三条边能够形成一个直角三角形 输出所有a + b + c <= 1000的勾股数 a小的先输出:a相同的,b ...
- python【蓝桥杯vip练习题库】ADV-187 勾股数
试题 算法提高 勾股数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 勾股数是一组三个自然数,a < b < c,以这三个数为三角形的三条边能够形成一个直角三角形 输出 ...
- 将整数拆分为勾股数的问题解决
在群里看到这样一个问题: 解法如下: 1 #include <stdio.h> 2 3 #define MAX 500000 4 unsigned g_array[MAX + 1] = { ...
- I00040 计算1000以内的勾股数
对于三元组<a, b, c>,若满足a^2+b^2=c^2,则称该三元组为勾股数. 可以假定a<b<c,在这个前提下,用穷举法来求解该问题.并且假定a<b<c< ...
最新文章
- 编程笔试(解析及代码实现):求出一个整数中各位数上所包含全部质数之和
- 直播 | AAAI 2021最佳论文:比Transformer更有效的长时间序列预测
- Pytorch使用Vision Transformer做肺癌和结肠癌组织病理学图像分类
- asp.net中session的原理及应用
- 《软件》2011年第6期刊登出 《DB 查询分析器》中断SQL语句的执行
- 2560介绍_炒股高手收益翻10倍,只因妙用这一招2560战法,看了都不亏了
- jitter单位_产生jitter的原因
- 20200507:力扣151周赛下
- DVB vs. SVB+Shader Instancing
- jquery 获取data-* 属性值
- 为什么安监控需要公网ip_为什么这些重要场所需要安装电气火灾监控系统
- python高斯求和函数_选择积分方法—高斯积分
- BIOS设置图解教程 BIOS设置图解教程之AMI篇
- 安装jdk在linux(2)
- 消费无人机难有新突破,行业无人机成极飞科技唯一突破口?
- 微信小程序 内容换行
- 计算机网络技术评估与备选方案,计算机网络技术业个人职业生涯规划书.doc
- Android 10.0 关机对话框UI定制化开发(一)
- 【PE系列】Windows平台为可执行文件exe添加图标的方法
- 美国主机与WordPress主机区别有哪些
热门文章
- 多线程 python tcp 图片_Python第四周之网络编程TCP (服务器/客户端; 线程下载图片;线程版服务器和客户端(单人、多人)) UDP...
- java提交数据到另一个页面_JS实现把一个页面层数据传递到另一个页面的两种方式...
- 周围剃光头顶留长发型_为什么很多秃头的人,宁愿周围留一圈头发,也不愿剃成光头?...
- 数据包构造分析工具Hping3常用命令集合大学霸IT达人
- Metasploit Shell升级Meterpreter会话技巧
- 服务器SSL/TLS快速检测工具TLLSSLed
- 使用recon/domains-hosts/baidu_site模块,枚举baidu网站的子域
- python课后题答案第五章_Python语言程序设计(美-梁勇)第5章习题解答
- php-screw下载,php_screw安装和使用
- 服务器支持热部署吗,热部署