어제는 unity 프로젝트때문에 알고리즘을 하루 쉬었다.
지금 dp를 공부하고 있는데 단계별 문제풀이로 다시 돌아가서 풀어보기로 했다.
유니티 C# 을 배울 때, 주석을 먼저 달고 코딩을 하는데
오늘은 조금 단계들이 긴 것 같아서 한글로 먼저 풀어쓴 뒤 코딩을 해보았다.
역시 명확해진다!!!! 굿굿
글로 먼저 쓰고 코딩하는 거 다들 시도해보세요~ㅎㅎㅎㅎ
# 먼저 대문자로 모두 바꾼다.
word = input().upper()
# 차례대로 검사하면서, 딕셔너리에 대문자 : 개수 순으로 담는다.
# 딕셔너리 선언
wordCount = {}
for i in word:
# 만약에 딕셔너리에 이미 있으면 다시 셀 필요없이 그냥 그 값을 뱉는다.
if i in wordCount:
continue
else:
wordCount[i] = word.count(i)
# 딕셔너리 value들중에 가장 큰 수를 뽑는다.
maxNum = max(wordCount.values())
# 가장 큰수를 value로 가지고 있는 문자를 리스트에 넣는다.
answer = []
for i in wordCount:
if wordCount[i] == maxNum:
answer.append(i)
# 리스트 길이가 2이상이면 ?를 출력한다.
if len(answer) > 1:
print("?")
# 아니면 리스트에 있는 아이를 출력한다.
else:
print(answer[0])
백준 5622 - 다이얼 (파이썬) (0) | 2021.01.13 |
---|---|
백준 1152 - 단어의 개수 (파이썬) (0) | 2021.01.12 |
백준 2747 - 피보나치 수 (파이썬) (0) | 2021.01.09 |
백준 1463 - 1로 만들기 (파이썬, DP) (0) | 2021.01.08 |
백준 2908 - 상수 (파이썬) (0) | 2021.01.08 |