CodingTest/Baekjoon

[baekjoon] 백준 19583번(파이썬): 싸이버개강총회

JunJangE 2022. 5. 19. 00:22

문제

 

19583번: 싸이버개강총회

첫번째 줄에는 개강총회를 시작한 시간 S, 개강총회를 끝낸 시간 E, 개강총회 스트리밍을 끝낸 시간 Q가 주어진다. (00:00 ≤ S < E < Q ≤ 23:59) 각 시간은 HH:MM의 형식으로 주어진다. 두번째 줄부터는

www.acmicpc.net

알고리즘

- 반복문을 통해 시간과 닉네임을 입력받는다.

- 개총 시작시간보다 일찍 들어온 사람을 dic에 입력한다.

- 개총 종료시간과 스트리밍 종료시간 사이에 들어온 사람을 확인하여 개총 시작시간보다 일찍 들어온 사람이라면 answer에 입력한다.

- answer에 길이를 출력한다.

코드

import sys

s, e, q = map(str, sys.stdin.readline().split())
dic = {}
answer = {}

# 반복문을 통해 시간과 닉네임을 입력받는다.
for i in sys.stdin:
    time, nick = i.rstrip().split()

    # 개총 시작시간(포함)보다 일찍 들어온 사람을 dic 입력
    if time <= s:
        dic[nick] = time

    # 개총 종료시간과 스트리밍 종료시간 사이에 들어온 사람을 확인
    elif e <= time <= q:
        # 개총 시작시간에보다 일찍 들어온 사람이라면 answer 입력
        if nick in dic:
            answer[nick] = 1

print(len(answer))

github

 

GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법

내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.

github.com