[백준] 11637번 인기 투표

거북이·2023년 1월 9일
0

백준[실버5]

목록 보기
93/114
post-thumbnail

💡문제접근

vote_information : 후보자 선거 번호와 후보자 득표 수를 저장한 리스트
total_vote : 선거에서 나온 전체 득표 수
vote_information을 1차적으로 득표 기준 내림차순 정렬을 수행하고 2차적으로 후보자 번호를 기준으로 오름차순 정렬을 수행했다.

💡코드(메모리 : 30616KB, 시간 : 244ms)

T = int(input())
for _ in range(T):
    n = int(input())
    candidate = []
    vote_information = []
    total_vote = 0  # 모든 후보자들이 얻은 득표 수
    number = 1
    for _ in range(n):
        vote = int(input())
        vote_information.append([number, vote])
        number += 1
        total_vote += vote
    vote_information.sort(key=lambda x: (-x[1], x[0]))
    if vote_information[0][1] == vote_information[1][1]:
        print("no winner")
    elif vote_information[0][1] > total_vote * 0.5:
        print("majority winner", str(vote_information[0][0]))
    elif vote_information[0][1] <= total_vote * 0.5:
        print("minority winner", str(vote_information[0][0]))

💡소요시간 : 10m

0개의 댓글