728x90
https://www.acmicpc.net/problem/11719
22/10/08
의외로 몇 번 틀렸던 문제로, 오답의 원인을 알아내면서 의외의 수확을 거둘 수 있었던 문제였다.
문제 접근 방식:
구현하는 것 자체는 어렵지 않은데, 몇 번 틀렸었다.
그 이유는 input대신에 sys.stdin.readline을 사용했다는 점이다.
나는 이 문제를 try except구문을 사용해서 EOFError가 되면 종료하는 형식으로 했는데, sys.stdin.readline에서는 EOF를 받으면 EOFError가 일어나지 않고 그냥 빈 문자열을 리턴한다.
때문에 여러번 틀렸었고, 이를 유의해서 구현만 하면 맞았습니다를 받을 수 있다.
아래는 내가 위의 접근 방식과 같이 작성한 파이썬 코드이다. 더보기를 누르면 확인할 수 있다.
더보기
# 11719번 그대로 출력하기 2
# 구현, 문자열
'''
오답 정리:
input은 EOF를 받을 때 EOFError를 일으키지만
sys.stdin.readline은 EOF를 받을 때 빈 문자열을 리턴함.
따라서 이 상황에서 sys.stdin.readline으로 코드를 짜면 무한루프가 나옴.
'''
while True:
try:
string = input()
print(string)
except:
break
'알고리즘 > 백준 문제 풀이' 카테고리의 다른 글
[Python] 20130번 Metroidvania Extreme (0) | 2022.10.29 |
---|---|
[Python] 1924번 2007년 (0) | 2022.10.29 |
[Python] 2877번 4와 7 (0) | 2022.10.29 |
[Python] 2661번 좋은수열 (0) | 2022.10.29 |
[Python] 2212번 센서 / 13164번 행복 유치원 (0) | 2022.10.28 |