[백준/Python] 2852번: NBA 농구

2023. 11. 19. 23:57· Koala - 12기/기초 알고리즘 스터디

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

 

2852번: NBA 농구

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

www.acmicpc.net

문제

동혁이는 NBA 농구 경기를 즐겨 본다. 동혁이는 골이 들어갈 때 마다 골이 들어간 시간과 팀을 적는 이상한 취미를 가지고 있다.

농구 경기는 정확히 48분동안 진행된다. 각 팀이 몇 분동안 이기고 있었는지 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 골이 들어간 횟수 N(1<=N<=100)이 주어진다. 둘째 줄부터 N개의 줄에 득점 정보가 주어진다. 득점 정보는 득점한 팀의 번호와 득점한 시간으로 이루어져 있다. 팀 번호는 1 또는 2이다. 득점한 시간은 MM:SS(분:초) 형식이며, 분과 초가 한자리 일 경우 첫째자리가 0이다. 분은 0보다 크거나 같고, 47보다 작거나 같으며, 초는 0보다 크거나 같고, 59보다 작거나 같다. 득점 시간이 겹치는 경우는 없다.

출력

첫째 줄에 1번 팀이 이기고 있던 시간, 둘째 줄에 2번 팀이 이기고 있던 시간을 출력한다. 시간은 입력과 같은 형식(MM:SS)으로 출력한다.

소스코드

n = int(input())
score = [0, 0]
ans = [0, 0]
before = 0
for _ in range(n):
    team, time = input().split()
    m, s = map(int, time.split(":")); team = int(team)
    time = m * 60 + s

    if score[0] > score[1]: ans[0] += time - before
    elif score[0] < score[1]: ans[1] += time - before

    before = time
    score[team - 1] += 1

if score[0] > score[1]: ans[0] += 48 * 60 - before
elif score[0] < score[1]: ans[1] += 48 * 60 - before

for i in range(2):
    print("%02d:%02d" %(ans[i] // 60, ans[i] % 60))

문제풀이

1. n값을 입력받는다

2. 현재 농구 게임의 점수를 저장할 리스트 score과 이기고 있었던 시간을 저장할 리스트 ans를 생성한다.

3. 그 전 득점 시간을 저장할 변수인 before을 생성한다.

4. n만큼 반복하며, 이긴 팀과 득점 시간을 입력받아 각각 team, time에 저장한다.

5. time에 저장된 시간을 split을 이용하여 분, 초로 나누어 저장하고, team을 정수형으로 바꾼다.

6. 분, 초로 나누어 저장한 시간을 모두 초로 바꾸어 time에 저장한다.

7. 만약 1번팀이 이기고 있다면, 현재 입력받은 득점 시간에서 그 전 득점 시간을 뺀 값(= 이기고 있었던 시간)을 1번팀의 이긴 시간인 ans[0]에 더해준다. 2번팀이 이기고 있다면 2번팀의 이긴 시간인 ans[1]에 더해준다.

8. 그 전 득점 시간을 의미하는 변수인 before을 time으로 바꿔준다.

9. 이긴 팀의 score에 +1을 해준다.

10. 반복문이 끝난 후, 경기시간인 48분에서 최종 득점 시간을 뺀 값을 이긴 팀에 더해준다.

11. 문자열 포매팅(%02d)을 사용하여 주어진 조건에 맞게 ans의 값을 다시 분, 초로 나누어 출력한다.

저작자표시 (새창열림)

'Koala - 12기 > 기초 알고리즘 스터디' 카테고리의 다른 글

[백준/python] 28258번: 사과 담기 게임  (0) 2024.02.11
[백준/python] 10974번: 모든 순열  (0) 2023.11.12
[백준/Python] 2309번: 일곱 난쟁이  (0) 2023.11.09
[백준/python] 7795번: 먹을 것인가 먹힐 것인가  (0) 2023.11.06
[백준/Python] 8979번: 올림픽  (0) 2023.11.05
'Koala - 12기/기초 알고리즘 스터디' 카테고리의 다른 글
  • [백준/python] 28258번: 사과 담기 게임
  • [백준/python] 10974번: 모든 순열
  • [백준/Python] 2309번: 일곱 난쟁이
  • [백준/python] 7795번: 먹을 것인가 먹힐 것인가
KauKoala
KauKoala
항공대 알고리즘 동아리 Koala 🥰
KauKoala
Koala
KauKoala
전체
오늘
어제
  • 분류 전체보기 (1889)
    • 공지 게시판 (10)
    • 정보 게시판 (8)
    • Codeforce (15)
    • acm-icpc (6)
    • Koala - 1기 (16)
    • Koala - 2기 (111)
      • Programming Contest (1)
      • A반 (20)
      • B반 (39)
      • C반 (22)
      • 기초 강의 (18)
    • Koala - 3기 (10)
      • 기초 스터디 (7)
    • Koala - 4기 (67)
    • Koala - 5기 (144)
      • 기초 알고리즘 스터디 (75)
      • 코딩테스트 준비 스터디 (68)
    • Koala - 6기 (102)
      • 기초 알고리즘 스터디 (75)
      • 코딩테스트 준비 스터디 (25)
      • 모의 테스트 스터디 (1)
    • Koala - 7기 (167)
      • 기초 알고리즘 스터디 (97)
      • 코딩테스트 준비 스터디 (68)
      • 모의 테스트 스터디 (1)
    • Koala - 8기 (44)
      • 기초 알고리즘 스터디 (32)
      • 코딩테스트 준비 스터디 (10)
      • 코드포스 버츄얼 스터디 (0)
      • 프로그래머스 LV2 스터디 (0)
    • Koala - 9기 (205)
      • 기초 알고리즘 스터디 (138)
      • 코딩테스트 준비 스터디 (64)
      • 모의테스트 준비 스터디 (1)
    • Koala - 10기 (117)
      • 기초 알고리즘 스터디 (30)
      • 코딩테스트 준비 스터디 (86)
      • 모의테스트 준비 스터디 (1)
    • Koala - 11기 (151)
      • 기초 알고리즘 스터디 (46)
      • 코딩테스트 준비 스터디 (104)
      • 모의테스트 준비 스터디 (1)
    • Koala - 12기 (86)
      • 기초 알고리즘 스터디 (31)
      • 코딩테스트 준비 스터디 (55)
    • Koala - 13기 (119)
      • 기초 알고리즘 스터디 (52)
      • 코딩테스트 준비 스터디 (67)
    • Koala - 14기 (116)
      • 기초 알고리즘 스터디 (39)
      • 코딩테스트 준비 스터디 (77)
    • Koala - 15기 (138)
      • 기초 알고리즘 스터디 (73)
      • 코딩테스트 준비 스터디 (65)
    • Koala - 16기 (47)
      • 코딩테스트 기초 스터디 (16)
      • 코딩테스트 심화 스터디 (31)
    • Koala - 17기 (62)
      • 코딩테스트 기초 스터디 (15)
      • 코딩테스트 심화 스터디 (47)
    • Koala - 18기 (31)
      • 코딩테스트 기초 스터디 (11)
      • 코딩테스트 심화 스터디 (20)
    • Koala - 19기 (43)
      • 코딩테스트 기초 스터디 (7)
      • 코딩테스트 심화 스터디 (36)
    • Koala - 20기 (0)
      • 코딩테스트 기초 스터디 (0)
      • 코딩테스트 심화 스터디 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 🐨항공대 알고리즘 학회 Koala 3기 모집
  • 🐨항공대 알고리즘 학회 Koala 2기 모집
  • 소모임 소개

인기 글

태그

  • C++
  • dfs
  • 백트래킹
  • dp
  • 백준
  • BOJ
  • BFS
  • 파이썬

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.3.0
KauKoala
[백준/Python] 2852번: NBA 농구
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.