알고리즘
[algorithm] 백준 11637 - 인기 투표 (파이썬)
hyuuny
2022. 8. 23. 14:42
📚 문제
입력
출력
예제 입력
4
3
10
21
10
3
20
10
10
3
10
10
10
4
15
15
15
45
예제 출력
majority winner 2
minority winner 1
no winner
minority winner 4
🧑🏻💻 풀이 과정
- 입력받은 후보자의 득표수를 리스트에 저장하자(
arr
) arr
에서 가장 큰 값을 별도의 변수max_val
에 저장하고,arr
에max_val
과 중복된 값이 있으면no winner
를 출력하고return
.arr
에서max_val
의 인덱스를 구한 뒤, arr - max_val < max_val이면majority winner
, 아니면minority winner
을 출력하자.
def popularity_vote():
arr = [int(input()) for _ in range(int(input()))]
max_val = max(arr)
if arr.count(max_val) > 1:
print("no winner")
return
idx = arr.index(max_val) + 1
print('majority winner', idx) if sum(arr) - max_val < max_val else print('minority winner', idx)
for _ in range(int(input())):
popularity_vote()