smallbut   3년 전

알파벳이 주어지면, 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오.

aabbbbbcccccc 로 주어진다면.

abc를 지워서 abbbbccccc

abc를 지워서 bbbcccc

abc를 지워서 bbccc

abc를 지워서 bcc

abc를 지워서 c

최종적으로 리스트에 남은 c를 출력하거나

갯수가 같으면 함께 줄어들다가 리스트가 텅비어버리고

마지막에 추가된 '?' 를 출력하는 식으로 해결해보았습니다

웹IDE 에서는 실행이 되는데

백준에서의 테스트 케이스에서는 2%도 못채우고 시간초과가 떠버리네요...

처음에는 remove 방식이

try except였는데 "try가 느린건가" 하여 고쳐보았고

in x 로 바꿨는데도 느려서 "input이 느린건가" 하여 고쳐보았고

sys.stdin.readline() 로 바꿨는데도 느려서

bbaaaccacbabcc 가 주어지면  abc 를 한번씩 remove 해본다는 발상자체가 느린건가..

생각이 듭니다..

이러한 발상은 무슨 문제가 있는 걸까요...?

dietomorrow   3년 전

알파벳이 26개라는걸 이용하세요.

smallbut   3년 전

감사합니다 최선을 다해봤지만 나중에 다시 해보겠습니다

댓글을 작성하려면 로그인해야 합니다.