탐욕법
-
코딩테스트 연습> 탐욕법(Greedy)> 구명보트ALGORITHM/Programmers 2020. 8. 14. 07:00
코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 문제설명: people로 주어지는 배열에 사람들의 몸무게가 주어지고, limit 변수로 구명보트의 제한 무게가 주어진다. 구명보트 1개는 한 번에 최대 2명씩 태울 수 있으므로 모든 사람을 구출하기 위해 필요한 구명보트의 최소개수를 구하는 문제이다. [1차 시도] def solution(people, limit): ans = 0 people.sort(reverse=True) start = len(people)-1 for i in ran..
-
코딩테스트 연습> 탐욕법(Greedy)> 큰 수 만들기ALGORITHM/Programmers 2020. 7. 22. 22:25
코딩테스트 연습 - 큰 수 만들기 programmers.co.kr 문제설명: number로 주어지는 숫자들 중 k개 만큼 제거 후 남는 숫자들로 가장 큰 수를 만들어야 한다. 단 주의할 점은, 숫자들의 순서를 섞으면 안된다. 즉 앞에서부터 차례대로 제거하며 가장 큰수를 return 해야 한다. [1차 시도] def solution(number, k): number = list(number) cur = 1 ans_len = len(number) while len(number)!= ans_len-k and cur!= len(number): if int(number[cur-1]) < int(number[cur]): h = cur while h!=0 and int(number[h-1]) < int(number[..