[5073] 백준 문제풀이 - 삼각형과 세 변
https://www.acmicpc.net/problem/5073
문제
삼각형의 세 변의 길이가 주어질 때 변의 길이에 따라 다음과 같이 정의한다.
Equilateral : 세 변의 길이가 모두 같은 경우 Isosceles : 두 변의 길이만 같은 경우 Scalene : 세 변의 길이가 모두 다른 경우 단 주어진 세 변의 길이가 삼각형의 조건을 만족하지 못하는 경우에는 “Invalid” 를 출력한다. 예를 들어 6, 3, 2가 이 경우에 해당한다. 가장 긴 변의 길이보다 나머지 두 변의 길이의 합이 길지 않으면 삼각형의 조건을 만족하지 못한다.
세 변의 길이가 주어질 때 위 정의에 따른 결과를 출력하시오.
입력
각 줄에는 1,000을 넘지 않는 양의 정수 3개가 입력된다. 마지막 줄은 0 0 0이며 이 줄은 계산하지 않는다.
출력
각 입력에 맞는 결과 (Equilateral, Isosceles, Scalene, Invalid) 를 출력하시오.
풀이
10101번 문제와 유사하다. 60%는 넘을 것 같던 정답비율이 48.914%인 이상한 문제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
while True:
n1, n2, n3 = map(int, input().split(" "))
arr = []
arr.append(n1)
arr.append(n2)
arr.append(n3)
if n1 == n2 == n3 == 0:
break
else:
if max(arr) >= (sum(arr) - max(arr)):
print("Invalid")
else:
if n1 == n2 == n3:
print("Equilateral")
elif n1 == n2 or n1 == n3 or n2 == n3:
print("Isosceles")
elif n1 != n2 and n1 != n3 and n2 != n3:
print("Scalene")
댓글남기기