less than 1 minute read

백준 문제 중 4153번

https://www.acmicpc.net/problem/4153

문제

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

tri

입력

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

출력

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



 # 삼각형을 판단 하는 함수 선언
def is_triangle(a:int,b:int,c:int)->None:
    
   # a b c 대소 관계를 모르게 sort 로 정렬
    tmp = [a,b,c]

    tmp.sort()

    # 피타고라스의 정리 이용
    if(tmp[2]**2==tmp[0]**2+tmp[1]**2):
        print('right')

    else:
        print('wrong')



while True:

    a,b,c = map(int,input().split())

    # while 문 종료 조건 설정
    if a+b+c==0:

        break

    is_triangle(a,b,c)
6 8 10
right
25 52 60
wrong
5 12 13
right
10 8 6
right
0 0 0

배운점

항상 sort와 sorted가 약간씩 헷갈렸는데 제대로 알 수 있었다.

  • sort 는 객체 자체를 정렬하고 none을 반환 하고 sorted는 객체를 정렬한 새로운 객체를 반환하고 객체 자체는 변하지 않는다

Leave a comment