Blog Full Notice
back to main page

최대 1 분 소요

motivation: 네이버 블로그

#프로젝트 오일러 문제 9: a + b + c = 1000 이 되는 피타고라스 수는? : 네이버 블로그

프로젝트 오일러 문제 9: a + b + c = 1000 이 되는 피타고라스 수는?

프로파일 무지성 2021. 7. 28. 10:50
URL 복사 이웃추가
#problem9_try1.py '''세 자연수 a, b, c 가 피타고라스 정리 a2 + b2 = c2 를 만족하면 피타고라스 수라고 부릅니다 (여기서 a < b < c ). 예를 들면 32 + 42 = 9 + 16 = 25 = 52이므로 3, 4, 5는 피타고라스 수입니다. a + b + c = 1000 인 피타고라스 수 a, b, c는 한 가지 뿐입니다. 이 때, a × b × c 는 얼마입니까?''' for i in range(1000): j=1 while 0<j<i: c=(j**2+i**2)**0.5 if c%1==0 and j+i+c==1000: answer=i*j*c j+=1 print(answer)

답: 31875000

27분이나 걸렸다.

한 15분이 지났을 쯤에 오류가 발생했다. 보니까 가능한 답의 수가 2개나 되었다. 잘 들여다 보니 2가지의 답 중 하나는 a=0, b=500, c=500 이었다. 즉 내가 0<a<b를 정의하지 못해 답이 두개나 나온 것이었다.

그래서 앞으로 나는 서두르지 않기로 다짐했다. 서두르니깐 문제에 숨어있는 조건을 모두 파악하지 못한 것 같다.

+코드 실행 시간은 매우 빠르진 않고 한 1~2초 정도 걸리는 것 같다.

댓글남기기