[Python] 숫자 짝꿍
2022. 10. 20. 16:00ㆍAlgorithm/프로그래머스
level : 1
문제 링크 : 숫자 짝궁
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
My Solution
def solution(X, Y):
answer = ''
a = sorted(list(set(X)&set(Y)),reverse=True)
if len(a) == 0:
return "-1"
elif len(a) == a.count('0'):
return "0"
for i in a:
answer+=i*(min(X.count(i),Y.count(i)))
return answer
풀이방법
set이라는 자료구조를 이용하여 X와 Y에 있는 원소들을 빼낸 뒤 and 연산자(&)를 이용하여 둘 다 가지고 있는 원소를 찾은 후 list로 바꾼다. 그 후 list를 내림차순으로 정렬하여 a를 초기화 한다.
a가 빈 list라면 "-1"을 반환하고
a에 0만 있다면 "0"을 반환한다.
a의 원소마다 X와 Y에서의 개수만큼 repeat해서 answer에 추가한다.
느낀점
최근 Python으로 코딩테스트를 풀 일이 생겨서 다시 이용하는 데 익숙하지 않아 조금 오래 걸렸다.하지만 점점 익숙해지는 느낌이다.
'Algorithm > 프로그래머스' 카테고리의 다른 글
| [Go] qr code (0) | 2024.08.01 |
|---|---|
| [JavaScript] 혼자 놀기의 달인 (0) | 2023.04.22 |
| [JavaScript] 단어 변환 (0) | 2022.09.26 |
| [JavaScript] 다음 큰 숫자 (0) | 2022.09.25 |
| [JavaScript] 야근 지수 (0) | 2022.09.17 |