
난이도: ★☆☆☆☆ • solved on: 2025-08-03

자료구조
int[]: 각도를 저장하는 배열알고리즘/기법
핵심 키워드
문제 분해
- 입력 받은 세 각의 합이 180이 아니면 삼각형이 아님 → "Error" 출력
- 합이 180이라면, 같은 각의 개수에 따라 출력 분기
핵심 로직 흐름
각도 3개 입력 → 합 확인 → 합 ≠ 180: "Error" → 합 = 180: → 모두 같음: "Equilateral" → 둘만 같음: "Isosceles" → 모두 다름: "Scalene" ``예외 처리
- 모든 입력은 양의 정수로 주어짐 → 별도 입력 유효성 검사는 필요 없음
import java.io.*;
class Main {
public static void main(String[] args) throws IOException {
int[] angles = new int[3];
int sum = 0;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for (int i = 0; i < 3; i++) {
angles[i] = Integer.parseInt(br.readLine());
sum += angles[i];
}
if (sum != 180) {
System.out.println("Error");
} else {
if (angles[0] == angles[1] && angles[1] == angles[2]) {
System.out.println("Equilateral");
} else if (angles[0] == angles[1] || angles[1] == angles[2] || angles[0] == angles[2]) {
System.out.println("Isosceles");
} else {
System.out.println("Scalene");
}
}
}
}
Set을 사용하면 중복 제거를 통해 더 간결하게 구분할 수 있다.합 = 180 조건은 가장 먼저 체크해야한다.비슷한 유형:
확장 문제: