반응형
문제
https://www.acmicpc.net/problem/1157
대소문자 가리지않고 많은 알파벳을 찾아내면 된다는것이다.
26개의 배열을 만들어 각문자의 개수를 담은후 가장 큰값을 구하면 될거같다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import sys s=list(sys.stdin.readline().strip()) #받아서 바로 배열로 넣어준다 count_list=[0 for _ in range(26)]#문자의 개수를 받아줄 배열 초기화 #ascii 65~90 A ascii 97 a ~122 for i in range(len(s)): if 0<=(ord(s[i])-65)<=25: count_list[ord(s[i])-65]+=1 elif 0<=(ord(s[i])-97)<=25: count_list[ord(s[i])-97]+=1 Max=0 #가장큰수 비교 count_check=0#가장큰수가 여러개 있을때 result=0#ascii 숫자가 담길곳 for i in range(len(count_list)): #각문자열의 수를비교하여 결과를 얻음 if Max<count_list[i]: Max=count_list[i] result=i count_check=0 elif Max==count_list[i]: count_check=1 if count_check==1: print("?") else: print(chr(result+65)) #65를 더하여 대문자에 해당문자를 출력 | cs |
ascii 문자표를 활용하여 풀 수 있는문제이다.
문자열은 파이썬이 다루기 편한거같다.
반응형
'알고리즘(python) > 문자열' 카테고리의 다른 글
[Python]문자열 백준 1152 (0) | 2019.12.18 |
---|---|
[Python]문자열 백준 2908 (0) | 2019.12.18 |
[Python]문자열 백준 2675 (0) | 2019.12.18 |
[Python]문자열 백준 11720 (0) | 2019.12.18 |
[Python]문자열 백준 11654 (0) | 2019.12.18 |
최근댓글