[문제]
[내 코드]
a, b = map(int, input().split())
max_people = people = b
for _ in range(9):
a, b = map(int, input().split())
people -= a
people += b
if max_people < people:
max_people = people
print(max_people)
- 첫번째 역에 어차피 내리는 사람이 0이니까.. 굳이 for문 앞에 빼줄 필요는 없었다
- 그리고 파이썬 내장함수 max 를 써서 if문을 한 개라도 줄일 수 있고
- 내리는 사람과 타는 사람의 차이로 바로 더해도 되겠다
[개선안]
m_ppl = ppl = 0
for _ in range(10):
off, on = map(int, input().split())
ppl += (on - off)
m_ppl = max(m_ppl, ppl)
print(m_ppl)
- 조금더 알아보기 쉽게 변수를 바꿨고
- 내장함수 max를 썼다
- 훨씬 깔끔한 것 같다!
'컴퓨터 > 코딩테스트' 카테고리의 다른 글
[백준/튼튼한기본기] 2309번: 일곱 난쟁이 (3) | 2022.09.11 |
---|---|
[백준/튼튼한기본기] 10870번: 피보나치수 5 (0) | 2022.09.11 |
[백준/튼튼한기본기] 10818번: 최소, 최대 (0) | 2022.09.10 |
[백준/튼튼한기본기] 3460번: 이진수구하기 (0) | 2022.09.10 |
[백준/튼튼한기본기] 2501번: 약수구하기 (0) | 2022.09.09 |