반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

짧은코딩

1157 단어 공부 본문

코딩 테스트(Python)/백준, 프로그래머스

1157 단어 공부

5_hyun 2022. 6. 9. 00:20
반응형

https://www.acmicpc.net/problem/1157

 

1157번: 단어 공부

알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.

www.acmicpc.net

 

내 풀이(맞음)

x = input()
x = x.upper()

dic = {}
for i in range(len(x)):
    if x[i] not in dic:
        dic[x[i]] = 1
    else:
        dic[x[i]] += 1

dic = sorted(dic.items(), key = lambda x: x[1], reverse=True)

if len(x) > 1:
    if dic[0][1] == dic[1][1]:
        print("?")
    else:
        print(dic[0][0])
else:
    print(dic[0][0])

딕셔너리를 사용하여 문제를 풀었다. 딕셔너리 정렬에 대해 찾아본적이 있지만 아직도 내꺼로 만들지 못했다. 그래서 구글링을 하여 딕셔너리 정렬법을 찾아서 풀었다. 그리고 출력 조건을 잘 설정해야한다. 처음에 한 자리 문자열인 z를 입력했다 치면 결과가 ?로 나왔다. 그래서 입력되는 문자열의 조건에 따라서 출력을 다르게 설정했다.

반응형

'코딩 테스트(Python) > 백준, 프로그래머스' 카테고리의 다른 글

1213 팰린드롬 만들기  (0) 2022.06.11
1181단어 정렬  (0) 2022.06.10
14425 문자열 집합  (0) 2022.06.08
2161 카드1  (0) 2022.06.07
2606 바이러스  (0) 2022.06.06
Comments