2010-05-05 156 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