1. 프로그래머스 - 기능개발
def solution(progresses, speeds):
answer = []
max_val = 0
cnt = 0
for i in range(len(progresses)):
check = 0
while progresses[i] < 100:
progresses[i] += speeds[i]
check += 1
if max_val < check:
if max_val == 0:
max_val = check
cnt += 1
else:
max_val = check
answer.append(cnt)
cnt = 1
else:
cnt += 1
answer.append(cnt)
return answer
2. 프로그래머스 - 구명보트
def solution(people, limit):
answer = 0
people.sort(reverse=True)
min_val = min(people)
cnt = -1
for i in range(len(people)):
if i == len(people) + cnt + 1:
break
if limit - min_val < people[i]:
answer += 1
else:
if i == len(people) + cnt:
answer += 1
break
else:
if people[i] + people[cnt] <= limit:
answer += 1
cnt -= 1
else:
answer += 1
return answer