반응형
여태까지는 개수 제한을 초반에 걸고 시작하거나 특정 조건이 되면 끝나도록 설정했었는데 이번엔 그런 조건이 없는 방식의 문제다. 그래서 어떻게 해야하는건지 몰라서 검색해보니 EOF라는 것이라고 한다.
EOF
End Of File를 말하는 것으로, 더 이상 읽을 수 있는 데이터가 존재하지 않는 것을 뜻한다.
Scanner 클래스를 이용할 때에는 hasNext()라는 함수를 이용하면 된다.
BufferedReader를 이용할 때에는 따로 함수가 없으므로 null 값인지 아닌지 비교하는 방식으로 처리해야한다.
1. BufferedReader를 이용한 방법
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String input = "";
while((input = br.readLine()) != null){
StringTokenizer st = new StringTokenizer(input, " ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
bw.write(a + b + "\n");
}
br.close();
bw.flush();
bw.close();
}
}
2. Scanner 클래스를 이용한 방법
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNextInt()){
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println(a + b);
}
sc.close();
}
}
Scanner 클래스에서 hasNextInt()를 이용해서 정수를 불러올 수 있다고 한다. 그래서 hasNextInt()를 사용해서 넘겨주었다.
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 10871 - X보다 작은 수 (0) | 2024.02.12 |
---|---|
[백준] 10807 - 개수 세기 (0) | 2024.02.11 |
[백준] 10952 - A + B (5) (0) | 2024.02.09 |
[백준] 2439 - 별 찍기(2) (0) | 2024.02.08 |
[백준] 2438 - 별 찍기(1) (0) | 2024.02.07 |