728x90
문제
7582번: On the Bus
Each scenario begins with a route number (up to 5 numbers or letters with no spaces) and Z, the size of the bus (maximum number of passengers, 10 <= Z <= 100) separated by a space. Input is terminated by a line containing just # 0 – this line should not
www.acmicpc.net

풀이
import sys
input = sys.stdin.readline
while True:
first_line = input().split()
route_number = first_line[0]
if route_number == '#':
break
max_passengers = int(first_line[1])
passengers = int(input())
stops = int(input())
for _ in range(stops):
off, on = map(int, input().split())
passengers = max(0, passengers - off) # 승객이 내림
# 승객이 탐 (최대 승객 수를 초과하지 않도록 조절)
passengers += min(on, max_passengers - passengers)
print(f"{route_number} {passengers}")
사용자로부터 노선 번호와 버스의 최대 승객 수를 입력받습니다. '#'가 입력되면 프로그램이 종료됩니다.
그리고 각 정류장에서 내리는 승객 수와 타는 승객 수를 입력받아, 버스의 현재 승객 수를 업데이트합니다.
모든 정류장을 처리하면 마지막으로 최종 승객 수와 노선 번호를 출력합니다.
728x90