😁 빅데이터 문제 풀기 & Study/- BAEKJOON 문제

[10989] 직각삼각형 / 파이썬 (피타고라스 정리 사용)

또방91 2021. 11. 19. 13:43
728x90

 

문제 링크: https://www.acmicpc.net/problem/4153

 

 

4153번: 직각삼각형

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

www.acmicpc.net


1차시도 실패

1
2
3
4
5
6
7
8
9
10
11
while True:
    
    test=list(map(int,input().split()))
    test.sort()
    if sum(test)==0:
        break
        
    if test[0]/3 == test[1]/4 == test[2]/5:
        print('right')
    else:
        print('wrong')
cs

3:4:5를 하여 직각 삼각형을 구하려고 디버그 체크를 했음에도 불구하고 실패....

사실 이유를 잘 모르겠다. 그래서 그냥 우리가 익히 알고 있는 피타고라스의 정리를 활용


정답은 ??

1
2
3
4
5
6
7
8
9
10
11
12
13
while True:
    
    test=list(map(int,input().split()))
    test.sort() #오름차순 정렬
    
    if sum(test)==0#0 0 0 나오면 스톱
        break
        
    #피타고라스의 정리    
    if test[0]**2 + test[1]**2 == test[2]**2:
        print('right')
    else:
        print('wrong')
cs

💯 풀이 과정

1) while로 반복해서 테스트값 입력할 수 있도록

2) 리스트로 세 점을 받아서 오름차순 정렬하기

3) 0 0 0이 나오면 실행정지

4) 피타고라스의 정리 써주기(정렬해놨으니 당연 가장 큰값은 test[2])


😎오늘의 한줄평: 수학 공식도 사용해보쟝

 

 

728x90