문제
과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다. 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오.
입력
입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.
출력
각 입력에 대해 직각 삼각형이 맞다면 "right", 아니라면 "wrong"을 출력한다.
def solution():
while True:
lengths = map(int, input().split())
a, b, c = sorted(lengths)
if a == b == c == 0:
return
if (a ** 2) + (b ** 2) == (c ** 2):
print("right")
else:
print("wrong")
if __name__ == "__main__":
solution()
해설
- 삼각형 세 변의 길이를 입력받고 정수로 변환한 뒤 오름차순으로 정렬한다.
- 각 세 변의 길이가 모두 0인 경우 종료되도록 한다.
- 가장 긴 변의 길이의 제곱이 나머지 변의 길이 제곱의 합과 같으면 "right"을 출력하고 아니면 "wrong"을 출력한다.