728x90
반응형
2022 카카오 공채.. 마지막 컬쳐핏 면접에서 떨어져서 정말 눈물을 흘렸던 바로 그 공채..
오랜만에 그때 풀었던 풀이를 다시 살펴봤다.
n의 제한이 10개밖에 되지 않아서 combination을 사용하여 간단하게 풀었고 무난하게 통과했다.
from itertools import combinations_with_replacement as cwr
from collections import Counter
def solution(n, info) :
answer = []
info = info[::-1]
max_n = -1
k = len(info)
for c in cwr(range(0, k), n) :
ryan = 0
apeach = 0
tmp_ans = [0 for _ in range(k)]
c = Counter(c)
for i in range(0, k) :
if info[i] < c[i] : # 개수가 더 많으면 라이언이 승
ryan += i
elif info[i] != 0 : # 아니면 어피치가 승
apeach += i
tmp_ans[i] = c[i]
if ryan > apeach :
diff = ryan - apeach
if max_n < diff :
max_n = diff
answer = tmp_ans
if answer :
return answer[::-1]
else :
return [max_n]
728x90
반응형
'CS Study > Algorithm(Coding Test)' 카테고리의 다른 글
[Programmers] 방문 길이 (Python) (0) | 2022.03.24 |
---|---|
[BOJ] 1261. 알고스팟 (Python) (0) | 2022.03.23 |
[Programmers] 힙(Heap) - 이중우선순위큐 (Python) (0) | 2022.03.23 |
[BOJ] 9252. LCS 2 (Python) (0) | 2022.02.08 |
[BOJ] 9372. 상근이의 여행 (Python) (0) | 2021.12.14 |