4153번: 직각삼각형
입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.
www.acmicpc.net
문제
과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다. 주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오.
입력
입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.
출력
각 입력에 대해 직각 삼각형이 맞다면 "right", 아니라면 "wrong"을 출력한다.
풀이
import math
num = list(map(int, input().split()))
num.sort()
while num[0] != 0 and num[1] != 0 and num[2] != 0:
if math.sqrt(num[0] * num[0] + num[1] * num[1]) == num[2]:
print("right")
else:
print("wrong")
num = list(map(int, input().split()))
num.sort()
세 변의 길이를 리스트 형태로 받아 sort() 메소드로 정렬하였다.
이후 피타고라스의 법칙에 따라
가장 긴 변 C의 제곱은 A의 제곱과 B의 제곱의 합과 같음을 이용하여
"right"과 "wrong"을 판별하였다.
'baekjoon-online-judge' 카테고리의 다른 글
[python] 백준 3009번 : 네 번째 점 (1) | 2021.08.09 |
---|---|
[python] 백준 1085번 : 직사각형에서 탈출 (0) | 2021.08.07 |
[python] 백준 9020번 : 골드바흐의 추측 (1) | 2021.08.06 |
[python] 백준 4948번 : 베르트랑 공준 (0) | 2021.08.04 |
[python] 백준 1929번 : 소수 구하기 (0) | 2021.08.04 |