728x90
어제에 이어 Greedy 문제였는데 잘 못하는 것임이 확실하다!
Greedy하게 결정하는 방법을 잘 모르겠다. 하지만 해봐야지!
사실 오늘은 조금 cheating을 했다.😏
구명 보트를 가장 적게 사용하면서 승객을 옮겨야 하는데 생각한 알고리즘이
제일 무거운 사람을 뽑아서 그 사람이랑 가장 많이 태워서 보내는 것이었는데 너무 복잡하게 생각했다.
그저 무거운 사람이랑 같이 갈 수 있는 제일 가벼운 사람이 있으면 보내고 아니면 그냥 무거운 사람만 보내는 방법이었다.
이렇게 간단하게 생각하는 방법을 좀 연습해야겠다....
from collections import deque
def solution(people, limit):
answer = 0
people.sort()
people = deque(people)
while people:
person = people.pop()
try:
light = people.popleft()
if person + light > limit:
people.appendleft(light)
answer += 1
except:
answer += 1
return answer
728x90
'TIL' 카테고리의 다른 글
99클럽 코테 스터디 16일차 TIL + 재귀, 딥러닝 (1) | 2024.06.07 |
---|---|
99클럽 코테 스터디 15일차 TIL + Deep Learning (0) | 2024.06.07 |
99클럽 코테 스터디 13일차 TIL + Fuzzing (0) | 2024.06.04 |
99클럽 코테 스터디 12일차 TIL + deque, BFS (2) | 2024.06.03 |
99클럽 코테 스터디 11일차 TIL + queue, DFS (0) | 2024.06.02 |