백준
[백준] 4153번 : 직각삼각형 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트
우당탕탕 개발자
2023. 8. 3. 15:08
728x90
반응형
4153번: 직각삼각형
입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.
www.acmicpc.net
1. 문제 설명
2. 풀이과정
- sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys
- 0 0 0을 입력받을 때 멈추기 위해 무한 반목문을 사용한다. while (True)
- 삼각형의 세 변의 길이를 입력받아 리스트로 저장한다. li = list(map(int, sys.stdin.readline().split()))
- 만약 0의 개수가 3개이면 0 0 0을 입력받은 경우이므로 종료한다. if (li.count(0) == 3): break
- 종료되지 않았다면 입력받은 세 길이를 오름차순 정렬한다. li.sort()
- 직각삼각형이 되려면 제일 긴 변의 제곱이 나머지 두 변의 제곱의 합과 같아야 한다. 하여 오름차순 정렬한 각 변의 길이를 가지고 직각삼각형을 판별한다. if (li[0] ** 2 + li[1] ** 2 == li[2] ** 2)
- 만약 직각삼각형이면 right를 출력한다. print('right')
- 직각삼각형이 아니라면 wrong을 출력한다. print('wrong')
반응형
3. 소스코드
import sys
while (True):
li = list(map(int, sys.stdin.readline().split()))
if (li.count(0) == 3):
break
li.sort()
if (li[0] ** 2 + li[1] ** 2 == li[2] ** 2):
print('right')
else:
print('wrong')
728x90
반응형