원문 : Special Pythagorean triplet
A Pythagorean triplet is a set of three natural numbers, a < b < c, for which,
a2 + b2 = c2
There exists exactly one Pythagorean triplet for which a + b + c = 1000.
Find the product abc.
피타고라스 삼각형은 세 개의 자연수의 집합입니다. a < b < c 일 때,
a2 + b2 = c2
입니다. a + b + c = 1000 이 되는 피타고라스 삼각형은 정확히 하나만 존재합니다.
abc 곱의 값을 구하십시오.
Brute-Force
일단 연립방정식으로 풀 수 있는지 확인을 해 봤습니다만, 방정식이 하나가 부족해서 풀수가 없네요. 어떻게든 하나의 변수값은 알아야 나머지를 풀 수 있는 형태입니다.
결국 삼중 루프를 도는 수밖에 없습니다.
다음을 만족하는 값들을 찾아야 합니다. 그런데 a 와 b 를 알면 c 를 구할 수 있으므로, 이중 루프만 돌아도 됩니다.
답은 31875000 입니다.
Others Solution
Math Blog 의 [ A 1000 Pythagorean triplets – Problem 9 ] 에 수학적인 접근이 있더군요. 궁금하면 확인해 보시기 바랍니다.
'물리_수학_기하학 > Project Euler' 카테고리의 다른 글
[ Project Euler With Python ] 12. Highly divisible triangular number (0) | 2019.03.08 |
---|---|
[ Project Euler With Python ] 11. Largest product in a grid (0) | 2019.02.21 |
[ Project Euler With Python ] 10. Summation of primes (0) | 2019.01.31 |
[ Project Euler With Python ] 8. Largest product in a series (0) | 2019.01.29 |
[ Project Euler With Python ] 7. 10001st prime (0) | 2019.01.28 |
[ Project Euler With Python ] 6. Sum square difference (0) | 2019.01.24 |
[ Project Euler With Python ] 5. Smallest multiple (0) | 2019.01.23 |
[ Project Euler With Python ] 4. Largest palindrome product (0) | 2019.01.21 |
[ Project Euler With Python ] 3. Largest prime factor (0) | 2019.01.19 |
[ Project Euler With Python ] 2. Even Fibonacci numbers (0) | 2019.01.18 |