반응형
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
// while(true){
// String[] numbers = br.readLine().split(" ");
//
// int a = Integer.parseInt(numbers[0]);
// int b = Integer.parseInt(numbers[1]);
//
// int result = a + b;
// if(a == 0 && b == 0){
// break;
// }
// sb.append(result + "\n");
// }
//
// System.out.println(sb);
try {
while (true) {
String[] numbers = br.readLine().split(" ");
int a = Integer.parseInt(numbers[0]);
int b = Integer.parseInt(numbers[1]);
int result = a + b;
if (a <= 0 || a >= 10 || b <= 0 || b >= 10) {
break;
}
sb.append(result + "\n");
}
System.out.println(sb);
br.close();
} catch (Exception e) {
}
}
}
10951은 EOF에 관한 문제인데 테스트시 Ctrl+z 또는 Ctrl+d를 누르면 확인이 가능
하지만 위의 10951(주석이 아닌 부분)은 try-catch로 검증해도 NullpointerException이 발생하는데 조금 더 수정해 봐야 할것 같다.
확인해 보니 강제종료 뿐만이 아니라 입력이 null일때도 처리가 되어야 한다고 한다.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
try {
String input;
while ((input = br.readLine()) != null) { // 입력 값이 null이 아닐 때까지 반복
String[] numbers = input.split(" ");
if (numbers.length < 2) {
continue; // 입력 값이 2개 미만인 경우 무시
}
int a = Integer.parseInt(numbers[0]);
int b = Integer.parseInt(numbers[1]);
int result = a + b;
// 범위 조건이 있었으나 문제 요구에 따라 정수 제한을 벗어나도록 수정
sb.append(result + "\n");
}
bw.write(sb.toString()); // StringBuilder에 저장된 결과를 한번에 출력
bw.flush(); // 출력 버퍼를 강제로 비워 실제 출력장치로 보냄
} finally {
br.close();
bw.close(); // BufferedWriter도 안전하게 닫아주는 것이 좋음
}
}
}
반응형
'Backend > JAVA' 카테고리의 다른 글
[Algorithm] 데일리 백준 (0) | 2024.04.29 |
---|---|
[Algorithm] 데일리 백준 (0) | 2024.04.26 |
[Algorithm] 데일리 백준 (0) | 2024.04.12 |
[Algorithm] 데일리 백준 (0) | 2024.04.09 |
[Algorithm] 데일리 백준 (0) | 2024.04.05 |