알고리즘
[백준] 11034 - 캥거루 세마리 2
JH_Lucid
2021. 6. 9. 13:34
- 더 이상 읽을 수 없는 데이터 있을 때 EOF 처리하는 방법을 몰라서 조금 헤맸다.
- 일반적으로 Scanner로 사용한다면, 엔터와 스페이스도 입력 예외 시키지 않고 데이터로 처리한다.
- 따라서 프로그램 종료를 위해선 정수가 아닌 값을 입력하여 예외 발생시켜야 한다.
- 여기에서는 BufferedReader를 사용했다. 입력 안들어올 경우 null을 반환하므로 처리하기 편하다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
String str;
while ((str = br.readLine()) != null) {
int[] kang = new int[3];
st = new StringTokenizer(str, " ");
for (int i = 0; i < 3; i++) {
kang[i] = Integer.parseInt(st.nextToken());
}
System.out.println(kang[1] - kang[0] > kang[2] - kang[1] ? kang[1] - kang[0] - 1 : kang[2] - kang[1] - 1);
}
}
}