반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/131128
해설
Counter 메소드를 사용하여 해결할 수 있었다. 문자열 비교만 수행하였을 때 시간 초과가 발생하여 시간복잡도를 고려하여야만 하는 문제였다. Counter 메소드를 사용하지 않고 직접 해당 map을 만들어 사용하는 연습을 해보아도 좋을 것 같다.
from collections import Counter
def solution(X, Y):
Y_map = Counter(Y)
couple = []
for d in X:
if 0 < Y_map[d]:
Y_map[d] -= 1
couple.append(d)
couple.sort(reverse=True)
if couple:
if couple[0] == "0" and couple[-1] == "0":
return "0"
return "".join(couple)
return "-1"
반응형