[백준] 9017 크로스 컨트리

문제링크 : https://www.acmicpc.net/problem/9017

 

9017번: 크로스 컨트리

입력 데이터는 표준입력을 사용한다. 입력은 T 개의 테스트 케이스로 주어진다. 입력 파일의 첫 번째 줄에 테스트 케이스의 수를 나타내는 정수 T 가 주어진다. 두 번째 줄부터는 두 줄에 하나의

www.acmicpc.net

t = int(input())
for tc in range(t):
    n = int(input())
    info = list(map(int, input().split()))
    # 0 : 출전 선수, 1 : 점수의 합, 2 : 4명까지 확인했는지 체크, 3: 5번째 선수 점수
    team = [[0]*4 for _ in range(201)]

    # 출전 선수 카운트
    for i in info:
        team[i][0] += 1

    score = 1
    ans = int(1e9)  # 점수의 합
    res = 0     # 팀 넘버

    for i in info:
        if team[i][0] >= 6:
            if team[i][2] < 4:
                team[i][1] += score
                team[i][2] += 1
                score += 1
            elif team[i][2] == 4:
                team[i][2] += 1
                team[i][3] += score
                score += 1
            elif team[i][2] > 4:
                score += 1

    for i in range(1, 201):
        if team[i][1] != 0:
            if ans > team[i][1]:
                ans = team[i][1]
                res = i
            if ans == team[i][1]:
                if team[res][3] < team[i][3]:
                    continue
                else:
                    ans = team[i][1]
                    res = i

    print(res)

'Algorithm > Python' 카테고리의 다른 글

[백준] 17142 연구소3  (1) 2024.03.07
[백준] 13549 숨바꼭질  (0) 2024.03.02
[백준] 14891 톱니바퀴  (0) 2024.03.01
[백준] 3055 탈출  (0) 2024.02.03
[백준] 2467 용액  (0) 2023.10.24