배열 요소 크기 비교
입력값의 갯수가 3개로 한정되어 있기 때문에, 배열을 사용하지 않아도 되지만 추후 다른 문제에서 여러개의 입력 값을 받게 될 경우를 고려하여 문제를 풀기 위해 배열을 사용하였다.
최적화 측면에서 비효율적인 코드 이며, 최적화된 코드를 참고로 함께 포스팅하였다.
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int[] N = new int[3];
for(int i=0; i<3; i++){
N[i] = Integer.parseInt(br.readLine());
}
int sum = Arrays.stream(N).sum();
boolean is60 = Arrays.stream(N).allMatch(i -> i == 60);
boolean isSame = false;
Outter:for(int i=0; i < N.length; i++){
for(int j=0; j < N.length; j++){
if(i != j && N[i] == N[j]){
isSame = true;
if(isSame) break Outter;
}
}
}
if(is60){
System.out.println("Equilateral");
}else if(sum == 180 && isSame){
System.out.println("Isosceles");
}else if(sum == 180 && !isSame){
System.out.println("Scalene");
}else{
System.out.println("Error");
}
br.close();
}
}
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n1 = Integer.parseInt(br.readLine());
int n2 = Integer.parseInt(br.readLine());
int n3 = Integer.parseInt(br.readLine());
if (n1 + n2 + n3 != 180) {
System.out.print("Error");
} else {
if (n1 == 60 && n1 == n2 && n1 == n3) {
System.out.print("Equilateral");
} else if (n1 == n2 || n2 == n3 || n3 == n1) {
System.out.print("Isosceles");
} else {
System.out.print("Scalene");
}
}
}