09009

[백준 2852번] NBA 농구 본문

Algorithm/구현
[백준 2852번] NBA 농구
09009 2023. 11. 5.

문제 보기

https://www.acmicpc.net/problem/2852

 

2852번: NBA 농구

첫째 줄에 골이 들어간 횟수 N(1<=N<=100)이 주어진다. 둘째 줄부터 N개의 줄에 득점 정보가 주어진다. 득점 정보는 득점한 팀의 번호와 득점한 시간으로 이루어져 있다. 팀 번호는 1 또는 2이다. 득

www.acmicpc.net

 

 

 

소스 코드

import sys
input = sys.stdin.readline
  
n = int(input())

# 팀 1의 시간에 따른 점수 리스트
score_team1 = [0] * (48 * 60 + 1)
# 팀 2의 시간에 따른 점수 리스트
score_team2 = [0] * (48 * 60 + 1)
# 끝나는 시간
end_time = 48*60

for _ in range(n):
    # 득점한 팀, 득점 시간
    team, score_time = input().split()
    # 득점한 시간을 분, 초로 변환
    minutes, seconds = score_time.split(":")[0], score_time.split(":")[1]
    score_time = int(minutes) * 60 + int(seconds)

    team = int(team)
    if team == 1:
        for i in range(score_time, end_time):
            score_team1[i] += 1
    elif team == 2:
        for i in range(score_time, end_time):
            score_team2[i] += 1

# 팀 1이 이기고 있는 시간, 팀 2가 이기고 있는 시간
team_winning_time_1, team_winning_time_2 = 0, 0

for i in range(end_time):
    if score_team1[i] > score_team2[i]:
        team_winning_time_1 += 1
    elif score_team1[i] < score_team2[i]:
        team_winning_time_2 += 1


print("{0:02d}:{1:02d}" .format(team_winning_time_1 // 60, team_winning_time_1 % 60))
print("{0:02d}:{1:02d}" .format(team_winning_time_2 // 60, team_winning_time_2 % 60))