问题描述如下:
“毕达哥拉斯三元数组存在{a,b,c},a<b<c,使得a^2+b^2=c^2,如3^2+4^2=5^2=25,求a,b,c满足以上条件,并使a+b+c=1000,给出a*b*c的值。”
代码如下:
/**
* 求毕达哥拉斯三元数组{a,b,c},使得a+b+c=target . 毕达哥拉斯三元数组存在{a,b,c},a<b<c,使得a^2+b^2=c^2
* a > 3,(target-(a+b))^2=c^2=a^2+b^2 --> target^2=2*target*(a+b)-2ab
*
* @return
*/
private static int getNumber(int target) {
int a = 0;
int b = 0;
int c = 0;
for (int i = 3; i < target; i++) {
for (int j = i; j < target; j++) {
if (target * target == 2 * target * i + 2 * target * j - 2 * i
* j) {// target^2=2*target*(a+b)-2ab
a = i;
b = j;
break;
}
}
}
c = target - a - b;
return a * b * c;
}
具体的分析可以看代码注释。得出结果31875000。
除了直接的办法,应该还有另外的方法来求,保持未完待续状态。
请不吝赐教。
@anthor ClumsyBirdZ
分享到:
相关推荐
算法-数论- 毕达哥拉斯三元组.rar
寻找毕达哥拉斯三元组的C语言代码 纯C语言代码 C语言初学课程需要
毕达哥拉斯三联 毕达哥拉斯三元组在Python中 打开勾股三重奏笔记本。 遵循更多详细说明。
毕达哥拉斯三元组
一个毕达哥拉斯三角形的三条边是由三个正整数A、B和C组成,从而A和B的平方和等于C的平方。例如,数字3、4、5,由于9+16=25,而形成一个毕达哥拉斯三角形。写一段完整的汇编程序,实现输入一个值给C,然后显示值为C时...
实验要求:一个毕达哥拉斯三角形的三条边是由三个正整数 A、B和C组成,从而A2+B2=C2。例如,数字 3、4、5,由于 9+16=25,而形成一个毕达哥拉斯三角形。写一段完整的汇编程序,实现输入一个值给 C,然后显示值为 C...
困扰世界各地数学家的最有趣和最著名的问题很可能是费马最后定理。 但是,自从提出该定理以来,人们一直无法找到解决问题的方法,直到安德鲁·威尔斯(Andrew Wiles)于1995年通过一种非常困难的方法,即“模块化...
古希腊数学家毕达哥拉斯在自然数研究中发现,220的所有真约数(即不是自身的约数)之和为: 1+2+4+5+10+11+20+22+44+55+110=284。 而284的所有真约数为1、2、4、71、 142,加起来恰好为220。人们对这样的数感到很...
超级滑行者分形万花筒演示-分形毕达哥拉斯树+万花筒镜查看或。
然后,将毕达哥拉斯模糊Hamacher运算应用到了信息集成之中,提出了毕达哥拉斯模糊Hamacher加权平均算子(PFHWA),毕达哥拉斯模糊Hamacher有序加权平均算子(PFHOWA),毕达哥拉斯模糊Hamacher加权几何算子(PFHWG)...
证明:根据毕达哥拉斯定理有 ∣x∣2+∣y∣2=∣x+y∣2|x|^2 + |y|^2 = |x+y|^2∣x∣2+∣y∣2=∣x+y∣2 又 ∣x∣2=xTx|x|^2 = x^Tx∣x∣2=xTx,∣y∣2=yTy|y|^2=y^Ty∣y∣2=yTy,∣x+y∣2=(x+y)T(x+y)|x+y|^2 = (x+y)^...
最近,他发现了勾股定理的一个有趣的性质:存在无限多个整数a,b和c的三元组(a≤b),使得a2 + b2 = c2。 编写程序来帮助George在一组整数中找到所有这些三元组(称为勾股数)。 输入应该从控制台读取输入数据。 ...
项目Euler .net 001 将所有低于1000的自然数加3或5的倍数。 002 通过考虑斐波那契数列中值不超过四百万的项,找到偶值项的总和。... 找到唯一的毕达哥拉斯三联体{a,b,c},其a + b + c = 1000。
目的:毕达哥拉斯逗号是一种古希腊的音乐数学调音方法,它定义了两个频率和一个虚拟频率的指数耦合常数谐波定律的整数比。 逗号表示易于观察并可以进行数学模拟的物理谐波系统。 虚拟谐波是必不可少的,可以间接测量...
在这里您可以找到可以帮助您管理的 C++ 方法: - V1+V2, V1-V2, dotProd(V1, V2), crossProd(V1, V2), dirCos(V1), norm(V)等数组之间的基本操作- 基本四元数代数 (Q+Q, Q*Q, QQ, conj(Q), magn(Q)) - 构建空间Ph五...
找到一个达到一定大小的毕达哥拉斯三胞胎的例子,说明欧拉问题9。 import Control.Monad import Control.Monad.Amb pyTriple :: ( Num t , Ord t ) => t -> Amb r ( t , t , t ) pyTriple n = do a <- ...
毕达哥拉斯树与python代码,介绍了如何用Python代码来表示毕达哥拉斯树
lru缓存leetcode ...毕达哥拉斯三元组 - 所有和组合 - 查找丢失的号码 - 置换字符串 - 所有子集 - 号码有效吗? —— 数字的力量 - 计算平方根 - 字符串 倒置句子中的单词 - , 删除重复项 - 删除空格 - 字符串分割
毕达哥拉斯三元组 - 所有和组合 - 查找丢失的号码 - 置换字符串 - 所有子集 - 号码有效吗? —— 数字的力量 - 计算平方根 - 字符串 倒置句子中的单词 - , 删除重复项 - 删除空格 - 字符串分割 - XML 到树 - 查找...