毕达哥斯拉三元组,即勾股数组。
勾股数组参考资料:http://blog.csdn.net/magicnumber/article/details/6410043
s的取值范围:3≤s≤√(2n-1),假设t取最小值,s就是这个范围。具体请查看参考资料。

#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <math.h>
using namespace std;const int MAXN = 1000100;
bool vis[MAXN];int gcd(int a, int b)
{return b==0?a:gcd(b,a%b);
}int main()
{int n,a,b,c,res,cnt;while(~scanf("%d",&n)){res = cnt = 0;memset(vis,0,sizeof(vis));int m = sqrt(2*n);for(int  t = 1; t <= m; t += 2){for(int s = t+2; s <= m; s += 2){if(gcd(s,t) != 1) continue;a = s*t;b = (s*s-t*t)/2;c = (s*s+t*t)/2;if(c > n) break;if(a*a + b*b != c*c)continue;++res;for(int k = 1; k*c <= n; ++k)vis[k*a] = vis[k*b] = vis[k*c] = true;}}for(int i = 1; i <= n; ++i)if(!vis[i])++cnt;printf("%d %d\n",res,cnt);}return 0;
}

poj 1305 Fermat vs. Pythagoras(毕达哥斯拉三元组)相关推荐

  1. POJ1305 UVA106 Fermat vs. Pythagoras 毕达哥斯拉三元组 特殊的不定方程

    特殊不定方程的应用,跟普通的不定方程一样,还是要依靠扩展欧几里德来解决,,可能方程有点偏, 题意,给一个正数N,求小于等于正数N的树中,本原的毕达哥斯拉三元组的个数  和  毕达哥斯拉三元组不涉及N以 ...

  2. 数论 毕达哥斯拉三元组 + 欧拉函数 + 容斥原理 hdu3939

    涉及的知识点还是挺多的,这题时间特卡.... 1.毕达哥斯拉三元组: 三元组(a,b,c),其中a,b,c无公因数,且满足a² +b² =c². a为奇数,b为偶数,c为奇数 可以得到如下勾股数组定理 ...

  3. FZU1669 Right-angled Triangle 本原毕达哥斯拉三元组 特殊不定方程的应用

    毕达哥斯拉定理其实就是勾股定理,x^2 + y^2 = z^2,满足这个方程的正整数三元组被成为毕达哥斯拉三元组 定理:正整数x,y,z,构成一个本原毕达哥斯拉三元组且y为偶数,当且仅当存在互素的正整 ...

  4. 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; 其中 ...

  5. 毕达哥斯拉三元组poj1305

    对于方程:,满足条件:x,y,z两两互素的正整数解为: ,其中m>n>0,gcd(m,n)=1,m,n一奇一偶. 典型题目:POJ1305

  6. JAVA:实现是否为Pythagorean Triples毕达哥斯拉三角数算法(附完整源码)

    JAVA:实现是否为Pythagorean Triples毕达哥斯拉三角数算法 package com.thealgorithms.maths;public class PythagoreanTrip ...

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

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

  8. 数论基础-小白学算法必学(一天一夜的成果)万字

    整数部分 前言 一.最大取整函数 二.丢番图逼近 三.和与积 四.整除性 五.整数的表示法和运算 五.素数和最大公因子 六.欧几里得算法 七.算术基本定理 八.因子分解法和费马数 九.线性丢番图方程 ...

  9. 【更新完毕】《算法竞赛中的初等数论》(ACM / OI / MO)前言、后记、目录索引(十五万字符的数论书)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 <算法竞赛中的初等数论>的全部内容的 Portable Document Format 版 ...

最新文章

  1. 概念化学习Django
  2. Visual Studio 调试(Dubug)模式下的“未定义标识符”
  3. 基于Windows Server 2003 ntbackup下数据文件的完整备份与差异备份
  4. 小马智行Pony.ai 2020校招正式开启
  5. 在LINQ to SQL中使用Translate方法以及修改查询用SQL
  6. 微软 MS Learn 上线 Blazor 入门教程
  7. Mac本如何卸载MySQL
  8. 2012三足鼎立:BEC、托业与博思的比较
  9. 2015/8/29 Python基础(3):数值
  10. Pivotal Cloud Foundry安全原理解析
  11. 电话用计算机接听,有了这个神器,在PC上也能接听iPhone电话、收发短息啦(安卓也可以哦~)...
  12. ZooKeeper性能测试
  13. 视频工作室必备利器——群晖NAS
  14. Greenplum查看表/库大小、进程、表膨胀处理(sql语句)
  15. python太极代码_Python : Turtle绘图-太极图(代码)
  16. 许亲亲--1101210998 第三次作业
  17. 敏涵国际品牌:定义高端美妆新力量
  18. 青岛企业掘金大数据时代 大数据时代已经来临
  19. 交换机安全技术你还一知半解?赶紧来学习吧
  20. 【转载】目前国内主流的云服务器厂商有哪些

热门文章

  1. 第八章 解释SQL查询计划(一)
  2. 【软考系统架构设计师】2018下系统架构师综合知识历年真题
  3. (干货 | 好文)让你效率提高10倍的23个顶级神器推荐,拿走不谢!
  4. 【循序渐进学Python】面向对象知多少——继承
  5. OpenGL模拟太阳、地球、月球公转自转
  6. Codeforces Round #209 (Div. 2) D. Pair of Numbers (模拟)
  7. JAVA软件工程师必备开发软件搭建、破解、注册
  8. 转载:CPU的设计与实现(1)--方案设计
  9. P1134 [USACO3.2]阶乘问题(数学)
  10. 记一次错误使用雪花算法引起的数据库主键冲突和解决时钟回拨问题