- ์๊ณ ๋ฆฌ์ฆ ์คํฐ๋ ๋ฌธ์ ํ์ด์ ๋๋ค.
- ๋ฐฑ์ค 10951๋ฒ ์์ ํ์ด๋ณผ ์ ์์ต๋๋ค.
- ๋ ์ ์ A์ B๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ค์, A+B๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
- ์ ๋ ฅ์ ์ฌ๋ฌ ๊ฐ์ ํ ์คํธ ์ผ์ด์ค๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
- ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ ํ ์ค๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ, ๊ฐ ์ค์ A์ B๊ฐ ์ฃผ์ด์ง๋ค. (0 < A, B < 10)
-
โโ [ํ๋ ] A+B - 4 FAQ โ โ
์ด ๋ฌธ์ ์ ๋ชฉ์ ์ ํ์ผ์ ๋(EOF)์ ์ฌ๋ฐ๋ฅด๊ฒ ํ๋จํ๋ ๋ฒ์ ์ฐ์ตํ๋ ๊ฒ์ ๋๋ค. ์ด ๋ช ์ค์ด ์ฃผ์ด์ง๋ค ๋ฑ์ ์ ๋ณด๋ ์ ๋ ์ ๋ ฅ์ผ๋ก ์ฃผ์ง ์์ต๋๋ค. ๋ํ ๋จ์ํ ํค๋ณด๋๋ก ์ ๋ ฅ ๋ด์ฉ๋ง ์ ๊ณ ํ๋ก๊ทธ๋จ์ด ์ข ๋ฃ๋์ง ์์ ์ํ๊น์ง๋ง ๋ด์๋ EOF๋ฅผ ์ ๋๋ก ์ฒ๋ฆฌํ๋์ง ์ ์ ์์ต๋๋ค. ๋ ์ด์ ์ฝ์ ๊ฒ ์์ ๋ ํ๋ก๊ทธ๋จ์ ์ข ๋ฃํ๋ ๋ฒ์ ์์์ผ ํฉ๋๋ค. ๊ทธ ๋ฐฉ๋ฒ์ ์ธ์ด๋ง๋ค ๋ค๋ฅด๊ณ ์ฌ์ฉํ๋ ํจ์๋ง๋ค ๋ค๋ฅด๋, ๊ตฌ๊ธ์ "C์ธ์ด EOF" ์ ๊ฐ์ด ๊ฒ์ํด์ ๊ทธ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์. ์ฃผ๋ก ํ์ผ ์ ์ถ๋ ฅ์ผ๋ก ์ค๋ช ๋์ด ์๊ฒ ์ง๋ง, ์ ๋ ฅ ์คํธ๋ฆผ๋ ํ์ผ ์ ๋ ฅ์ด๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ตญ ๋์ผํฉ๋๋ค.
- (C/C++) scanf๋ EOF๋ฅผ ๋ฐํํ์ง, ๋ณ์์ ์ ์ฅํด์ฃผ์ง ์์ต๋๋ค.
- (Java) Scanner์ ๋ฉ์๋๋ค์ NoSuchElementException์ ๋์ง๋๋ค.
- (Java) BufferedReader.readLine()์ null์ ๋ฐํํฉ๋๋ค.
- (Python) input()์ EOFError๋ฅผ ๋ฐ์์ํต๋๋ค.
- (Python) sys.stdin.readline()์ ๋น ๋ฌธ์์ด์ ๋ฐํํฉ๋๋ค.
while True:
try:
A, B = map(int, input().split())
print(A+B)
except Exception as e:
print(e) # EOF when reading a line
break
ํ์ด 1์์๋ EOF ์๋ฌ๊ฐ ๋ฐ์ํ์ง๋ง, sys.stdin.readline()์ ํ์ผ ๋์์ ๋น ๋ฌธ์์ด์ ๋ฐํํ๋ฏ๋ก try-except ๋ฌธ์์ not enough values to unpack ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
from sys import stdin
while True:
try:
a, b = map(int, stdin.readline().split())
print(a + b)
except Exception as e:
print(e) # not enough values to unpack (expected 2, got 0)
break
Python์ผ๋ก ๋ฐฑ์ค ๋ฌธ์ ๋ฅผ ํ ๋ ๋ด์ฅ ํจ์ input()์ผ๋ก ์
๋ ฅ์ ๋ฐ์ผ๋ฉด ์๊ฐ ์ด๊ณผ๋ก ์ค๋ต์ฒ๋ฆฌ๊ฐ ๋๊ณ , sys ๋ชจ๋์sys.stdin.readline()์ผ๋ก ์
๋ ฅ์ ๋ฐ์ผ๋ฉด ์๊ฐ ์์ ์ฑ์ ์ด ๋๋ ๊ฒฝ์ฐ๊ฐ ์์ฃผ ๋ฐ์ํ๋ค.
๋๋์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ์
๋ ฅ๋ฐ์์ผ ํ ๋, input()๋์ sys.stdin.readline()์ ์ด์ฉํ๋ฉด ์ฑ๋ฅ(์๋)์ด ํฅ์๋๋ค.