while True:
num_list = list(map(int,input().split()))
num_list.sort()
if num_list[0] == 0 and num_list[1] == 0 and num_list[2] == 0:
break
elif num_list[2] ** 2 == (num_list[1] ** 2 + num_list[0] **2):
print("right")
else:
print("wrong")
위 코드는 직각 삼각형은 빗변길이의 제곱은 빗변을 제외한 두변의 각각 제곱의 합과 같다는 공식을 알면 쉽게 해결 할 수 있는 문제이다.
처음 코드를 썻을땐, a,b,c의 숫자가 항상 오름차순인 줄 알고 list를 만들지 않고 코딩을 하였다. 문제를 틀리고 다시 보니 입력 값들의 순서가 바뀔수도 있겠다고 생각하여 삼각형의 길이를 리스트로 만들어서 sort() 함수를 사용하여 오름차순 정렬을 하고, 문제를 해결하였다.
백준[2675번]:: 문자열 반복(Python,파이썬) (0) | 2020.09.14 |
---|---|
백준[3053번]:: 택시 기하학(Python,파이썬) (0) | 2020.09.13 |
백준[3009번]:: 네번째 점(Pythoh,파이썬) (0) | 2020.09.12 |
백준[1085번]:: 직사각형에서 탈출(Python, 파이썬) (0) | 2020.09.12 |
백준[9020번]:: 골드바흐의 추측(Python,파이썬) (0) | 2020.09.10 |
댓글 영역