더북(TheBook)

시간대를 늘렸지만 그래프의 형태는 거의 비슷합니다. 그렇다면 3시간 동안 80만 명이 들어오는 역은 과연 어디일까요?

이 문제는 지금까지 많이 다뤄본 패턴인 ‘최댓값 찾기’이므로 전체 코드를 한번에 작성하겠습니다. 먼저 승차 인원의 최댓값을 저장할 변수 mx와 역의 정보를 저장할 변수 mx_station을 초기화하고, 7시부터 9시까지의 승차 인원 합계의 최댓값을 찾아서 출력합니다.

import csv
f = open('subwaytime.csv')
data = csv.reader(f)
next(data)
next(data)
mx = 0               # 최댓값을 저장할 변수 초기화
mx_station = ''      # 최댓값을 갖는 역 이름 저장 변수 초기화
for row in data :    # 최댓값 찾기(전부 탐색하여 최댓값을 갱신하는 방식)
    row[4:] = map(int, row[4:])
    if sum(row[10:15:2]) > mx :
        mx = sum(row[10:15:2])
        mx_station = row[3]+'('+row[1]+')'
print(mx_station, mx)

 

실행 결과

신림(2호선) 809541
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.