Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- puppeteer
- Android
- 자바
- Spring
- mysql
- Docker
- 스프링부트
- redis
- LangChain
- 백준알고리즘
- nodejs
- Mongoose
- TCP
- graphql
- 조건문
- HTTP
- 스프링
- mongodb
- ai
- 프로그래머스
- Apollo
- java11
- java
- eof
- 서버
- restapi
- bufferdreader
- Scanner
- MapReduce
- k8s
Archives
- Today
- Total
자라나라 개발머리
[백준 알고리즘/JAVA 11] 10951: A + B - 4/EOF 뜻 본문
문제
https://www.acmicpc.net/problem/10951
문제 정리
- 오답 이유
EOF에 대해 몰랐기 때문
- 정리
EOF란?
End Of File의 약자로, 데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없음을 나타낸다.
라고 써 있긴 하지만 도통 무슨 소린지 모르겠다. 콘솔 입출력만 줄곧 해왔던 알고리즘 초보여서 데이터 소스에서 읽을 수 있는 데이터가 없다는 말 부터가 이해가 안갔다. 콘솔에서 입력을 하는데 어떻게 데이터가 없어?!?!?!??
알고보니 콘솔 입력이 아니라 파일 입력에서 사용하는 용어였다. 사실 end of FILE 이라고 대놓고 써있다.
그래서 쉽게 풀어말하면, EOF는 파일의 끝에서 더이상 읽을 데이터가 없다고 컴퓨터에 알려주는 방법이다. 해당 문제처럼 입력 값의 수를 명시해놓지 않은 문제에서는 EOF 처리가 필요하다.
다음 링크에 JAVA Scanner와 BufferedReader의 EOF처리 방법을 작성해놓았다.
https://growupdevmind.tistory.com/9
최종 코드
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str= "";
while(( str=br.readLine() ) != null) {
int sum = (str.charAt(0)-48)+(str.charAt(2)-48);
System.out.println(sum);
}
}
}
'알고리즘 > 백준 알고리즘' 카테고리의 다른 글
[프로그래머스/JAVA] 3진법 뒤집기 (0) | 2023.03.30 |
---|---|
[백준 알고리즘/Java11] 조건문 2525 오븐 시계 (0) | 2022.07.09 |
[백준 알고리즘/Java11] 런타임 에러 (main class Main) (0) | 2022.07.08 |