【题目】
A Pythagorean triplet is a set of three natural numbers, a < b < c, for which,
a
2 +
b
2 =
c
2
For example, 32 + 42 = 9 + 16 = 25 = 52.
There exists exactly one Pythagorean triplet for which a + b + c = 1000.
Find the product abc.
【翻译】
一个毕达哥拉斯三元组是一个包含三个自然数的集合,a<b<c,满足条件:
a
2 +
b
2 =
c
2
例如:32 + 42 = 9 + 16 = 25 = 52.
已知存在并且只存在一个毕达哥拉斯三元组满足条件a + b + c = 1000。
找出该三元组中abc的乘积。
【思路】暴力破解 简单有效【代码】
void test9()
{
int answer=0;
for(int a=1;a<334;a++)
for(int c=334;c<1000;c++)
{
int b=1000-a-c;
if(a*a+b*b==c*c)
{
answer=a*b*c;
break;
}
}
cout<<answer<<endl;
}
【答案】本题答案为 31875000。