4153번: 직각삼각형
https://www.acmicpc.net/problem/4153
# 코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
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));
StringBuilder sb = new StringBuilder();
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int[] edge = new int[3];
for (int i = 0; i < 3; i++) {
edge[i] = Integer.parseInt(st.nextToken());
}
while (edge[0] != 0 && edge[1] != 0 && edge[2] != 0) {
Arrays.sort(edge);
if ((edge[0]*edge[0] + edge[1]*edge[1]) == edge[2]*edge[2]) sb.append("right").append("\n");
else sb.append("wrong").append("\n");
// 다음 세변 입력받기
st = new StringTokenizer(br.readLine(), " ");
for (int i = 0; i < 3; i++) {
edge[i] = Integer.parseInt(st.nextToken());
}
}
System.out.print(sb);
br.close();
}
}
- 입력에 따라 출력이 늘어나는 문제라 오랜만에 StringBuilder를 꺼냈다.
- 출력이 여러 줄일 경우 StringBuilder를 사용해 쌓았다가 출력하면 매번 System.out.println()를 이용하는 것보다 시간복잡도가 줄어든다.
- I love sb
'코딩테스트 > 자바 문제풀이' 카테고리의 다른 글
[CLASS 2: 브루트포스] 백준 2798 블랙잭 (1) | 2024.10.06 |
---|---|
[CLASS 2: 수학] 백준 30802 웰컴 키트 (0) | 2024.10.05 |
[CLASS 1: 구현] 백준 2675 문자열 반복 (1) | 2024.10.03 |
[CLASS 1: 구현] 백준 10818 최소, 최대 (1) | 2024.10.02 |
[CLASS 1: 구현] 백준 2562 최댓값 (0) | 2024.10.01 |