title: "[프로그래머스] 숫자 짝꿍 Python 파이썬 해설 (Level 1) - 이도훈"
cleanUrl: "programmers/131128"
description: "프로그래머스 Level 1 문제 [숫자 짝꿍]의 풀이를 정리합니다."

문제 설명 및 제한사항

아이디어 및 해결 방법

코드

from collections import Counter

def solution(X, Y):
    xcnt, ycnt = Counter(X), Counter(Y)
    
    d = {}
    for k in set(xcnt.keys()) & set(ycnt.keys()):
        d[k] = min(xcnt[k], ycnt[k])
    
    answer = []
    for num, cnt in reversed(sorted(d.items())):
        answer += [num] * cnt
    
    answer = ''.join(answer)
    if answer == '':
        return "-1"
    else:
        return str(answer) if answer[0] != '0' else '0'

출처

프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges