1. 문제 설명

2. 내가 한 코드
def solution(X, Y):
answer = ''
XY_Set = set(X) & set(Y)
for x in list(XY_Set):
answer += x * min(X.count(x), Y.count(x))
answer = ''.join(reversed(sorted(answer)))
if answer == '':
return '-1'
elif answer.replace('0', '') == '':
return '0'
return answer
- 개인적으로 난이도가 조금 있다고 생각한다.
- 처음에는 타입변환으로 int()로 변환 후 str()로 변환하거나, 두개의 문자열을 동시에 비교를 했었지만 틀리거나 시간 초과로 틀리는 경우가 많았다.
- 그래서 생각해낸게 교집한으로 사용할수 있도록 설정하고 count로 작은 수를 찾아서 반환하는 것이였다.
- 다만 int() 후 str() 로 형변환 하는것에 매우 큰 자원을 먹다보니 0이 여러개 일 경우를 생각하다보니 0을 아예없엤을때 값이 없다면 0으로 리턴하도록 설정했다.