[python 3]開発プログラマー機能
質問元:https://programmers.co.kr/learn/courses/30/lessons/42586?language=python3
方法
各機能は、以前の機能が完了するまで導入できません.
progress配列をindex 0~len(progress)-1に順次近づけます.
k番目の機能については,1日が過ぎたと仮定する.完了した機能(進捗[i]+day*速度[i]>=100) は同じ日に配布できます.( s+=1 ) 未完成時は が配備可能な機能がある場合(s>0)、正解に を追加します.の導入可能日をスキップし、導入可能機能を追加する数(s+=1)
while( progresses[i] + day*speeds[i] < 100 ):
day += 1 (一番外側のwhile文から離れて配置可能な機能がある場合は、正解に追加して最後の文に戻ります)
コード#コード#
方法
各機能は、以前の機能が完了するまで導入できません.
progress配列をindex 0~len(progress)-1に順次近づけます.
k番目の機能については,1日が過ぎたと仮定する.
while( progresses[i] + day*speeds[i] < 100 ):
day += 1
コード#コード#
def solution(progresses, speeds):
answer = []
s = 0
i,day = 0,0
while( i < len(progresses) ):
# 이미 완료된 기능
if( progresses[i] + day*speeds[i] >= 100 ):
s += 1
i += 1
continue
# 완료되지 않았을 경우, 이전 배포된 기능들의 개수를 정답에 추가
elif( s > 0):
answer.append(s)
s = 0
while( progresses[i] + day*speeds[i] < 100 ):
day += 1
s += 1 # 현재 기능 완료
i += 1 # 다음 기능
if( s > 0 ): answer.append(s) #
return answer
Reference
この問題について([python 3]開発プログラマー機能), 我々は、より多くの情報をここで見つけました https://velog.io/@beanzinu/Python3프로그래머스기능개발テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol