POP 3

[programmers] 구명보트

https://programmers.co.kr/learn/courses/30/lessons/42885# 코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 접근법 주의 사항: 정렬한 다음에 최솟값부터 더하는 방식으로 하면 항상 최소 구명보트 이용을 만족하지 못한다. 반례 [80,90,20,30,40,50,60], 100 이 주어졌을 때, 최솟값을 더하는 방식으로 하면 20,30,40/50/60/80/90 -> 총 5개의 구명 보트를 써야 한다. 그러나 실제로 최소 구명 보트는 20,80..

Python/CoTe 2022.03.20

[programmers] 크레인 인형 뽑기

https://programmers.co.kr/learn/courses/30/lessons/64061 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr # 주의 : 열의 모든 행을 검사 해야함 def solution(board, moves): answer = 0 bucket = [] for move in moves: for i in range(len(board)): # moves에 저장된 열의 모든 행마다 검사 if board[i][move-1] == 0: continue else: bucket.append(board[i][move-1]..

Python/CoTe 2022.02.19

[programmers] 완주하지 못한 선수

첫 번째 코드 - 정확도 통과, 효율성 통과X list 의 pop, remove은 너무 오래 걸린다. def solution(participants, completions): answer = '' for c in completions: participants.pop(participants.index(c)) return participants[0] 두 번쨰 코드 from collections import defaultdict def solution(participants, completions): answer = '' unfinished = defaultdict(int) for p in participants: unfinished[p] += 1 for c in completions: unfinished[c..

Python/CoTe 2022.02.19
728x90