728x90
문제 설명
문제 풀이 과정
첫 번째 풀이: 시간 초과
from collections import Counter
def solution(X, Y):
answer = ''
inter = list(set(X) & set(Y))
s = []
x = sorted(X, reverse = True)
y = sorted(Y, reverse = True)
cnt_x = Counter(x)
cnt_y = Counter(y)
if len(inter) == 0:
return '-1'
else:
for i in sorted(inter, reverse = True):
answer += str(i * min(cnt_x[i], cnt_y[i]))
if int(answer) == 0:
answer = '0'
return answer
다른 사람의 풀이
from collections import Counter
def solution(X, Y):
answer = '-1'
list_X, list_Y = list(X), list(Y)
set_X, set_Y = set(list_X), set(list_Y)
cnt_X, cnt_Y = Counter(list_X), Counter(list_Y)
intersection = set_X & set_Y
if intersection:
answer = ''
sorted_number = sorted(intersection, reverse=True)
for num in sorted_number:
answer += num * min(cnt_X[num], cnt_Y[num])
if sum(list(map(int, list(answer)))) == 0:
answer = "0"
return answer
- coding test url:
https://school.programmers.co.kr/learn/courses/30/lessons/131128
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
728x90
'Coding test' 카테고리의 다른 글
[KAKAO BLIND RECRUITMENT] 신고 결과 받기(python) (0) | 2022.12.16 |
---|---|
[KAKAO TECH INTERNSHIP 2022] 성격 유형 검사하기(python) (0) | 2022.12.16 |
[Programmers] 삼총사 (0) | 2022.12.12 |
[Programmers] 콜라 문제 (0) | 2022.12.12 |
[Programmers] 햄버거 만들기 (2) | 2022.12.11 |