728x90
반응형
1157번: 단어 공부
알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.
www.acmicpc.net
1. 문제 설명
2. 풀이과정
- 변수 S를 생성하고 문자열을 입력받는다. S = input()
- 대소문자를 구분하지 않으므로 알파벳 개수의 크기를 갖는 리스트를 만들고 0으로 초기화해 준다. count = [0] * 26
- 각 알파벳을 사용하기 위한 반복문을 구현한다. for i in range(97, 123)
- 입력받은 문자열의 문자를 하나씩 추출한다. for j in S
- 추출한 문자가 각 해당 알파벳의 소문자이거나 대문자이면 if (j == chr(i)) or (j == chr(i - 32))
- 해당 알파벳 위치의 개수에 1을 증가시킨다. count[i - 97] += 1
- 알파벳의 개수를 저장한 리스트에서 최댓값(가장 많이 사용된 알파벳)을 추출한다. Max = max(count)
- 만약 알파벳 개수의 최댓값(가장 많이 사용된 알파벳)이 여러 개이면 if (count.count(Max) >= 2)
- ?를 출력한다. print("?")
- 최댓값(가장 많이 사용된 알파벳)이 1개이면 추출한 최댓값(가장 많이 사용된 알파벳)을 알파벳 대문자로 출력한다. else: print(chr(count.index(Max) + 65))
반응형
3. 소스코드
S = input()
count = [0] * 26
for i in range(97, 123):
for j in S:
if (j == chr(i)) or (j == chr(i - 32)):
count[i - 97] += 1
Max = max(count)
if (count.count(Max) >= 2):
print("?")
else:
print(chr(count.index(Max) + 65))
728x90
반응형
'백준' 카테고리의 다른 글
[백준] 2525번 : 오븐 시계 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.01 |
---|---|
[백준] 4673번 : 셀프 넘버 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.01 |
[백준] 2750번 : 수 정렬하기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.01 |
[백준] 2908번 : 상수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.06.30 |
[백준] 2675번 : 문자열 반복 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.06.30 |
[백준] 2839번 : 설탕 배달 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.06.30 |
[백준] 10809번 : 알파벳 찾기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.06.30 |
[백준] 1152번 : 단어의 개수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.06.29 |