[Python] 백준 - 4153번

SMongS·2022년 7월 23일
0

CodingTest

목록 보기
26/49

직각삼각형

문제

과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다. 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오.

입력

입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.

출력

각 입력에 대해 직각 삼각형이 맞다면 "right", 아니라면 "wrong"을 출력한다.


예제 입력 1

6 8 10
25 52 60
5 12 13
0 0 0

예제 출력 1

right
wrong
right

코드

import sys

while 1:
    x, y, z = map(int, sys.stdin.readline().split())

    if x == 0 and y == 0 and z == 0:
        break

    arr = [x, y, z]
    arr.sort(reverse=False)

    if (arr[0] ** 2 + arr[1] ** 2) == arr[2] ** 2:
        print("right")
    else:
        print("wrong")

입력을 x, y, z로 3개의 길이를 받습니다.

0 0 0 으로 받으면 종료합니다.

배열에 저장해서 작은 순으로 정렬합니다.
받는 값이 크기 순서대로 오지 않습니다.
가장 큰 값을 작은 두 값을 제곱해서 합한 것과 비교해야 하기에 정렬해줍니다.

작은 값 2개의 제곱한 값의 합과 큰 값의 제곱 합과 같으면 직각삼각형입니다.
직각삼각형이 맞으면 right 틀리면 wrong을 출력합니다.

profile
반갑습니당~😄

0개의 댓글