자바 백준 5073번
브론즈 3
https://www.acmicpc.net/problem/5073
문제 보기
분류: 수학, 구현, 기하학
문제 풀기
문제에서 주어진 조건에 맞춰 분기한다.
입력이 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");
}
}
}
}
'공부하기 > 백준' 카테고리의 다른 글
[Java] 백준 풀기 7510 - 고급 수학 (0) | 2023.08.05 |
---|---|
[Java] 백준 풀기 9063 - 대지 (0) | 2023.08.04 |
[Java] 백준 풀기 10101 - 삼각형 외우기 (0) | 2023.08.02 |
[Java] 백준 풀기 14215 - 세 막대 (2) | 2023.07.31 |
[Java] 백준 풀기 2166 - 다각형의 면적 (0) | 2023.07.30 |