반응형
[문제 출처]
https://www.acmicpc.net/problem/1159
1159번: 농구 경기
상근이는 농구의 세계에서 점차 영향력을 넓혀가고 있다. 처음에 그는 농구 경기를 좋아하는 사람이었다. 농구에 대한 열정은 그를 막을 수 없었고, 결국 상근이는 농구장을 청소하는 일을 시작
www.acmicpc.net
[문제 풀이]
n명의 선수의 성이 주어질 때, 성의 첫 글자가 같은 선수를 찾는 문제이다.
5명 이상의 선수가 성의 첫 글자가 같다면 해당 글자를 출력하고, 5명 이상 첫 글자가 같은 경우가 없다면 PREDAJA를 출력한다.
출력할 수 있는 글자가 여러 개라면 사전 순으로 공백 없이 출력한다.
딕셔너리 자료형을 이용해서 선수의 성을 입력받고 해당 성의 첫 글자를 키로 그리고 값으로는 인원수를 저장하도록 하였다.
따라서 딕셔너리에 해당 글자의 유무를 파악하여 없는 경우는 추가해주고 있는 경우는 인원수를 증가시킨다.
딕셔너리에 모두 저장했다면 값이 5 이상인 글자들을 골라서 사전순으로 정렬하여 출력한다.
#1159
n = int(input())
cnt = dict()
for i in range(n):
player = input()
if player[0] in cnt.keys():
cnt[player[0]] += 1
else:
cnt[player[0]] = 1
result = []
for k, v in cnt.items():
if v >= 5:
result.append(k)
result.sort()
if len(result) > 0:
print(''.join(result))
else:
print('PREDAJA')
반응형
'알고리즘 > python' 카테고리의 다른 글
[python/파이썬] 백준 1145 적어도 대부분의 배수 (0) | 2023.01.25 |
---|---|
[python/파이썬] 백준 1223 주사위 (0) | 2023.01.20 |
[python/파이썬] 백준 1100 하얀 칸 (0) | 2023.01.18 |
[python/파이썬] 백준 1057 토너먼트 (0) | 2023.01.17 |
[python/파이썬] 백준 1193 분수찾기 (0) | 2023.01.16 |