공부하기/백준

[Java] 백준 풀기 5073 - 삼각형과 세 변

XEV 2023. 8. 3. 23:47

자바 백준 5073번

브론즈 3

https://www.acmicpc.net/problem/5073

 

5073번: 삼각형과 세 변

각 입력에 맞는 결과 (Equilateral, Isosceles, Scalene, Invalid) 를 출력하시오.

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 수학, 구현, 기하학

 

 

 

 

 

문제 풀기

문제에서 주어진 조건에 맞춰 분기한다.

 

입력이 0 0 0 일 경우 while loop를 종료하고, 그렇지 않은 경우 가장 긴 변을 뺀 나머지 두 변의 합이 가장 긴 변보다 큰지 확인하여 삼각형을 판단한다.

세 변이 같을때, 두 변만 같을때, 그리고 아무것도 해당하지 않는 경우를 나누어 해당 내용을 출력한다.

 

 

 

 

 

코드 보기

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (true) {
int side1 = sc.nextInt();
int side2 = sc.nextInt();
int side3 = sc.nextInt();
// 입력이 0 0 0인 경우 종료
if (side1 == 0 && side2 == 0 && side3 == 0) {
break;
}
// 가장 긴 변의 길이 구하기
int maxSide = Math.max(Math.max(side1, side2), side3);
// 삼각형 조건을 만족하는지 확인
if (maxSide < side1 + side2 + side3 - maxSide) {
if (side1 == side2 && side2 == side3) {
System.out.println("Equilateral");
} else if (side1 == side2 || side2 == side3 || side1 == side3) {
System.out.println("Isosceles");
} else {
System.out.println("Scalene");
}
} else {
System.out.println("Invalid");
}
}
}
}