반응형
문제
과거 이집트인들은 각 변들의 길이가 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 math
class Square:
#피타고라스의 정리 이용
def isSquare(self, x, y, z):
temp = [x, y, z]
#정렬을 통해 가장 긴 변이 리스트의 마지막으로 가도록.
temp.sort()
if temp[2]**2 == (temp[0]**2 + temp[1]**2):
return "right"
else:
return "wrong"
if __name__ == "__main__":
a = Square()
resultList = []
while True:
x, y, z = map(int, input().split())
if (x+y+z) == 0 :
break
else:
resultList.append(a.isSquare(x, y, z))
print(*resultList, sep="\n")
반응형
'코딩테스트 > 알고리즘 문제풀이' 카테고리의 다른 글
[파이썬] 1002 : 터렛 (0) | 2021.07.28 |
---|---|
[파이썬] 3053 : 택시 기하학 (0) | 2021.07.28 |
[파이썬] 3009 : 네 번째 점 (1) | 2021.07.27 |
[파이썬] 1085 : 직사각형에서 탈출 (0) | 2021.07.27 |
[파이썬] 9020 : 골드바흐의 추측 (0) | 2021.07.24 |
댓글