출처 : 백준, https://www.acmicpc.net/problem/2460
더보기
풀이
if __name__ == '__main__':
people = 0
max_p = 0
while True:
try:
minus, plus = map(int, input().split())
people = people - minus + plus
if max_p < people:
max_p = people
except:
break
print(max_p)
입력이 끝날 때 까지 루프를 돌면서 출입 인원을 계속 반영하여 그때그때 최대값을 비교한다.
시간 복잡도
O(N)
다른 사람의 풀이를 보면서 알게 된 점
python에서 입력이 끝날 때까지 루프 돌리기
while True:
try:
~~
except:
break
파이썬에서 EOF Error를 발생시켜 이를 catch하는 방식으로 루프를 돌리면,
입력이 끝난 후 enter를 치면 EOF 에러를 감지하여 while 문에서 빠져나온다
고찰
-
'알고리즘 > Python' 카테고리의 다른 글
[python] 백준 2309 - 일곱 난쟁이 (0) | 2022.03.08 |
---|---|
[python] 프로그래머스 - 행렬의 곱셈 (0) | 2022.03.02 |
[python] 백준 3460 - 이진수 (0) | 2022.03.02 |
[python] 백준 3460 - 약수 구하기 (0) | 2022.03.02 |
[python] 프로그래머스 - JadenCase 문자열 만들기 (0) | 2022.03.01 |