题意: 让你找出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

View Code

#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【勾股数】相关推荐

  1. poj 1305 Fermat vs. Pythagoras(毕达哥斯拉三元组)

    毕达哥斯拉三元组,即勾股数组. 勾股数组参考资料:http://blog.csdn.net/magicnumber/article/details/6410043 s的取值范围:3≤s≤√(2n-1) ...

  2. 勾股数(毕达哥拉斯三元组)

    勾股数(毕达哥拉斯三元组) 勾股数:可以构成一组直角三角形边长的三个正整数. eg: 3 4 5 勾股数的规律: 1)任何大于1的正奇数a=2k+1,其平方t=a^2仍为奇数,且将平方数拆成两个相邻的 ...

  3. 法里数列和本原勾股数

    法里数列 性质1:连续三项为 b a . b + d a + c . d c \frac ba .\frac{b+d}{a+c}. \frac dc ab​.a+cb+d​.cd​,且分子分母满足是互 ...

  4. 数论概论学习笔记(一)——勾股数

    版权声明:本文为博主原创文章,未经博主允许不得转载. Pythagoras theorem(勾股定理) 一个直角三角形中,两个直角边边长的平方加起来等于斜边长的平方. 如果设直角三角形的两条直角边长度 ...

  5. C语言 · 勾股数

    勾股数 勾股定理,西方称为毕达哥拉斯定理,它所对应的三角形现在称为:直角三角形. 已知直角三角形的斜边是某个整数,并且要求另外两条边也必须是整数. 求满足这个条件的不同直角三角形的个数. [数据格式] ...

  6. 【c语言】蓝桥杯算法提高 勾股数

    问题描述 勾股数是一组三个自然数,a < b < c,以这三个数为三角形的三条边能够形成一个直角三角形 输出所有a + b + c <= 1000的勾股数 a小的先输出:a相同的,b ...

  7. python【蓝桥杯vip练习题库】ADV-187 勾股数

    试题 算法提高 勾股数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 勾股数是一组三个自然数,a < b < c,以这三个数为三角形的三条边能够形成一个直角三角形 输出 ...

  8. 将整数拆分为勾股数的问题解决

    在群里看到这样一个问题: 解法如下: 1 #include <stdio.h> 2 3 #define MAX 500000 4 unsigned g_array[MAX + 1] = { ...

  9. I00040 计算1000以内的勾股数

    对于三元组<a, b, c>,若满足a^2+b^2=c^2,则称该三元组为勾股数. 可以假定a<b<c,在这个前提下,用穷举法来求解该问题.并且假定a<b<c< ...

最新文章

  1. 编程笔试(解析及代码实现):求出一个整数中各位数上所包含全部质数之和
  2. 直播 | AAAI 2021最佳论文:比Transformer更有效的长时间序列预测
  3. Pytorch使用Vision Transformer做肺癌和结肠癌组织病理学图像分类
  4. asp.net中session的原理及应用
  5. 《软件》2011年第6期刊登出 《DB 查询分析器》中断SQL语句的执行
  6. 2560介绍_炒股高手收益翻10倍,只因妙用这一招2560战法,看了都不亏了
  7. jitter单位_产生jitter的原因
  8. 20200507:力扣151周赛下
  9. DVB vs. SVB+Shader Instancing
  10. jquery 获取data-* 属性值
  11. 为什么安监控需要公网ip_为什么这些重要场所需要安装电气火灾监控系统
  12. python高斯求和函数_选择积分方法—高斯积分
  13. BIOS设置图解教程 BIOS设置图解教程之AMI篇
  14. 安装jdk在linux(2)
  15. 消费无人机难有新突破,行业无人机成极飞科技唯一突破口?
  16. 微信小程序 内容换行
  17. 计算机网络技术评估与备选方案,计算机网络技术业个人职业生涯规划书.doc
  18. Android 10.0 关机对话框UI定制化开发(一)
  19. 【PE系列】Windows平台为可执行文件exe添加图标的方法
  20. 美国主机与WordPress主机区别有哪些

热门文章

  1. 多线程 python tcp 图片_Python第四周之网络编程TCP (服务器/客户端; 线程下载图片;线程版服务器和客户端(单人、多人)) UDP...
  2. java提交数据到另一个页面_JS实现把一个页面层数据传递到另一个页面的两种方式...
  3. 周围剃光头顶留长发型_为什么很多秃头的人,宁愿周围留一圈头发,也不愿剃成光头?...
  4. 数据包构造分析工具Hping3常用命令集合大学霸IT达人
  5. Metasploit Shell升级Meterpreter会话技巧
  6. 服务器SSL/TLS快速检测工具TLLSSLed
  7. 使用recon/domains-hosts/baidu_site模块,枚举baidu网站的子域
  8. python课后题答案第五章_Python语言程序设计(美-梁勇)第5章习题解答
  9. php-screw下载,php_screw安装和使用
  10. 服务器支持热部署吗,热部署