728x90
반응형
SMALL
https://www.acmicpc.net/problem/5073
풀이방법
세 변을 알기위해서 정수형 배열 3으로 정의해놓았다.
1. 첫번째 조건문 두 변의 길이가 가장 긴 변의 길이보다 작은지 검사한다. false반환 시 Invalid 출력
2. 첫번째 조건문을 통과하고, 세 변의 길이가 같으면 Equilateral 출력
3. 첫번째 조건문 통과하고, 두번째 조건문 false시 두 변의 길이가 같으면 Isosceles 출력
4. 첫번째 조건문 통과하고, 두번째 세번째 조건문 false 시 모두 변의 길이가 다르다는 뜻이므로 Scalene 출력
이렇게 로직을 짰다.
제출 코드
import java.io.*;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int [] arr = new int[3];
while(true){
StringTokenizer st = new StringTokenizer(br.readLine());
arr[0] = Integer.parseInt(st.nextToken());
arr[1] = Integer.parseInt(st.nextToken());
arr[2] = Integer.parseInt(st.nextToken());
if(arr[0] ==0 && arr[1]==0 && arr[2]== 0) break;
Arrays.sort(arr);
if(arr[0] + arr[1] <= arr[2]) System.out.println("Invalid");
else if(arr[0] == arr[1] && arr[1]== arr[2]){
System.out.println("Equilateral");
}
else if(arr[0] == arr[1] || arr[0] == arr[2] || arr[1] == arr[2]){
System.out.println("Isosceles");
}
else{
System.out.println("Scalene");
}
}
}
}
회고
자바는 파이썬 보다 많이 복잡함을 아직 많이 느낀다.
그리고 많은 문제를 안풀어보았다보니 수학적인 부분에서는 다른 풀이를 많이 참고하는 편이다. 다음 문제부터는 내 힘으로 푸는힘을 길러야겠다.
728x90
반응형
LIST
'백준[자바]' 카테고리의 다른 글
[백준/Java] - 2798 블랙잭 (1) | 2025.03.10 |
---|---|
[백준/Java] - 2869 달팽이는 올라가고 싶다. (1) | 2025.03.08 |
[백준/Java] - 2292번 벌집 (0) | 2025.03.05 |
[백준/Java] - 2908 상수 (0) | 2025.02.26 |
[백준/Java] - 1152번 단어의 개수 (0) | 2025.02.25 |