[Baekjoon Online Judge] 백준 1157번 단어 공부
(Python)
(글쓴날 : 2020.03.22)
* Baekjoon Online Judge, 백준 1157번 문제 Python 언어 풀이입니다.
* 소스 코드의 저작권은 글쓴이에게 있습니다.
백준 1157번 단어 공부
1) 문제
문제 링크 : https://www.acmicpc.net/problem/1157
2) 풀이 과정
알파벳 대소문자로 이루어진 단어가 주어지고 해당 단어 내에서 대소문자 구분 없이 가장 많이 사용된 알파벳을 대문자로 출력하는 문제입니다.
저의 경우, 알파벳 총개수만큼의 2차원 리스트를 생성하여, 각 1차원 리스트의 0번째 인덱스에는 단어에서 사용된 알파벳의 개수를 저장하고 1번째 인덱스에는 차례로 알파벳을 저장했습니다.
단어에서 사용된 알파벳별 개수를 구하기 위한 반복문을 돌리는 것이 끝난 후, 0번째 인덱스를 기준으로 2차원 리스트를 내림차순으로 정렬하여 가장 많이 사용된 알파벳을 구해 문제를 해결하였으며, 만약 0번째 리스트의 0번째 인덱스 값과 1번째 리스트의 0번째 인덱스 값이 같다면 가장 많이 사용된 알파벳이 여러 개 존재하는 경우이므로 ?를 출력해 주시면 되겠습니다.
3) 코드
* Python 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
import sys
input = sys.stdin.readline
count = []
for i in range(26):
count.append([0, chr(i + 65)])
word = list(input().rstrip().upper())
for i in word:
count[ord(i) - 65][0] += 1
count.sort(key=lambda x: x[0], reverse=True)
if count[0][0] == count[1][0]:
print('?')
else:
print(count[0][1])
|
'Deprecated' 카테고리의 다른 글
[Baekjoon Online Judge] 백준 2908번 상수(Python) (0) | 2020.03.22 |
---|---|
[Baekjoon Online Judge] 백준 1152번 단어의 개수(Python) (0) | 2020.03.22 |
[Baekjoon Online Judge] 백준 2675번 문자열 반복(Python) (0) | 2020.03.22 |
[Baekjoon Online Judge] 백준 10809번 알파벳 찾기(Python) (0) | 2020.03.22 |
[Baekjoon Online Judge] 백준 11720번 숫자의 합(Python) (0) | 2020.03.22 |