본문 바로가기
IT/알고리즘

1일 N알고리즘 - #27

by Sungjun_ 2020. 5. 25.

문제

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

 

4153번: 직각삼각형

문제 과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다. 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오. 입력 입력은 여러개의 테스트케이스로

www.acmicpc.net

문제는 위 사이트를 참고해주세요.

 


풀이

while True:
    numList = list(map(int, input().split()))
    if 0 in numList:
        break
    numList.sort()
    if (numList[0] ** 2) + (numList[1] ** 2) == numList[2] ** 2:
        print("right")
    else:
        print("wrong")

 

while문으로 테스트 케이스를 계속해서 받게합니다.

numList에는 입력한 변의 길이들을 리스트로 넣어줍니다.

만약 numList안에 0이 있으면 while문을 종료시켜 0 0 0이 입력됐을 때 종료시키게 합니다.

numList.sort()를 하면 숫자가 작은 순서대로 정렬이 되기 때문에 입력한 숫자의 순서 상관없이 큰 수가 끝에 있게됩니다.

 

그래서 피타고라스의 정리가 성립되면 right 안되면 wrong을 출력합니다.

 


결과

결과 화면

 

'IT > 알고리즘' 카테고리의 다른 글

1일 N알고리즘 - #29  (0) 2020.05.27
1일 N알고리즘 - #28  (0) 2020.05.25
1일 N알고리즘 - #26  (0) 2020.05.25
1일 N알고리즘 - #25  (0) 2020.05.25
1일 N알고리즘 - #24  (0) 2020.05.24

댓글