2010-05-05 107 views
2

这个问题的状态:项目欧拉9了解

甲勾股数是一组三个自然数,ABC的,为此,

一个 + B = C

例如,3 + 4 = 9 + 16 = 25 = 5 。

存在着正好一个勾股数为其中+ B + C = 1000。 查找产品ABC。

我不知道它试图问你什么。我们是否试图找到a2 + b2 = c2,然后将这些数字插入a + b + c = 1000

+1

阅读“25 = 52”会导致身体疼痛。有人请修正格式。原始项目Eurler链接; http://projecteuler.net/index.php?section=problems&id=9 – RJFalconer 2010-05-05 00:35:38

+0

@ RJFalconer-抱歉,没有注意到,增加了^号 – DMan 2010-05-05 00:40:05

+5

然而你不在乎“32 + 42 = 9 + 16”? – icio 2010-05-05 01:11:47

回答

8

你需要找到ab,并c使得两个a2 + b2 = c2a + b + c = 1000。然后你需要输出产品a * b * c

+0

“a * b * c”的意义是什么?答案肯定是“a”,“b”和“c”,而不是他们的产品。 – icio 2010-05-05 01:17:57

+6

@icio:该项目的性质欧拉网站是它接受一个单一的数字作为答案。如果问题的解决方案由多个数字组成,则问题必须以某种方式将最终结果提取为一个数字。 – 2010-05-05 01:39:34

+1

大多数时间项目欧拉问题使用总和将几个数字合并为一个,但在这种情况下,总和已经在问题中给出,所以他们相当随意地选择乘法。连接将是另一种选择。 – starblue 2010-05-05 19:44:16

3

与大量的项目欧拉问题一样,它的核心是找到一组同时满足多个约束条件的数字。

在这种情况下,约束条件是:

1)^ 2 + B^2 = C^2

2)+ B + C = 1000

在早期的问题解决方案可以像尝试每种可能组合的嵌套循环一样简单。

8

如果您发现正确的见解,这些问题通常可以轻而易举地解决。这里的诀窍是在你写循环之前使用一个小代数。我会给你一个提示。看看生成毕达哥拉斯三元组的公式。你能用有用的方式写出边长的总和吗?

+0

这是一个很好的;) – nischayn22 2012-06-18 15:44:29