보안을 그리다, 훈이

(추가예정) [Baekjoon/Python3] 9339번 마라토너 본문

Programming/Python & Data Structures

(추가예정) [Baekjoon/Python3] 9339번 마라토너

HooNeee 2020. 12. 5. 22:15

[Baekjoon/Python3] 9339번 마라토너

 

www.acmicpc.net/problem/9339

 

9339번: 마라토너

상근이는 마라톤 학원을 운영하고 있다. 학원의 수강생은 총 K명으로, 다가오는 마라톤 대회에 참가하기 위해 연습을 하고 있다. 마라톤 대회가 끝나고, 기록이 6시간 이하인 경우는 마라톤 완주

www.acmicpc.net

 

# 정신없는코드
t = int(input())
for i in range(t):
    k = int(input())    # 수강생 수
    d_nums = {}
    nums = list(map(int, input().split()))  # 수강생 참가번호
    n = int(input())    # 참가자 수
    best = 360
    for i in range(n):
        a, b, c = map(int, input().split())
        if a in nums:
            if b == -1:
                pass
            else:
                d_nums[a] = b * 60 + c
                if best > d_nums[a]:
                    best = d_nums[a]
    cnt = 0 # 인증서 받은 수강생 수
    b_nums = [] # 가장 기록이 좋은 수강생
    for key in d_nums.keys():
        if d_nums[key] == best:
            b_nums.append(key)
        if d_nums[key] != 0 and d_nums[key] <= 360:
            cnt += 1
    print(*b_nums, cnt)
Comments