1. 문제
programmers.co.kr/learn/courses/30/lessons/42891
2. 풀이
- 인덱스 번호와 내용을 한번에 담은 이중배열을 만든다.
- 내용순으로 정렬후 작은것부터 배열에서 빼기
- 다 뺀 후 다시 인덱스 번호 순으로 정렬
- 남은 것으로 뽑기
3. 코드
def solution(food_times, k):
food_times_sort = []
index = 1
for i in food_times :
element = []
element.append(i)
element.append(index)
index = index+1
food_times_sort.append(element)
food_times_sort_0 = sorted(food_times_sort, key = lambda x : x[0])
sliceN = 0
minN = 0
while(True):
prev = minN
minN = food_times_sort_0[sliceN][0]
l = (minN-prev)*(len(food_times_sort_0)-sliceN)
if k >= l:
k = k - l
sliceN = sliceN +1;
if len(food_times_sort_0) == sliceN:
return -1
if k == 0:
break
else :
break
food_times_sort_1 = sorted(food_times_sort_0[sliceN:], key = lambda x : x[1])
answer = food_times_sort_1[k][1]
return answer
4.
우선순위 큐를 안쓰고는 런타임오류나나..?
아이디어는 같은데 구현을 못하겠다.,.
슈비두비두밤밤;..
'ALGORITHM > Kakao' 카테고리의 다른 글
(Python) 신규 아이디 추천 (0) | 2021.05.08 |
---|---|
(C++)2021 KAKAO BLIND RECRUITMENT 합승 택시 요금 (0) | 2021.05.04 |
2019 KAKAO BLIND RECRUITMENT 후보키 (실패코드) (0) | 2021.03.27 |
(Python) 2019 KAKAO BLIND RECRUITMENT 실패율 (0) | 2021.03.25 |
(Python) 2019 KAKAO BLIND RECRUITMENT오픈채팅방 (0) | 2021.03.24 |