[プログラマーlv 2]橋を渡るトラックPython
Queue問題ですは、各要素の残り時間情報を含むコードを記述することが困難であるため、0として埋め込まれたBridgeを作成し、物理的に(?)トラックは橋を渡ることができる. 2つの Queueを同時に処理するため,2つのpop順序を考慮してこそ,トラップに落ちずに解くことができる. たとえば、
Queueのpop順序が正しくなければ(最初に橋の上のheadを弾き出さなければ)、橋の上のすべてのトラック(7台)と待機列の中の4台のトラックの合計が10を超えるため、橋に追加されない.そのため、この部分では、時間が1時間遅れることになります.
ソース:
Queueのpop順序が正しくなければ(最初に橋の上のheadを弾き出さなければ)、橋の上のすべてのトラック(7台)と待機列の中の4台のトラックの合計が10を超えるため、橋に追加されない.そのため、この部分では、時間が1時間遅れることになります.
ソース:
def solution(bridge_length, weight, truck_weights):
bridge=[0]*bridge_length
time=0
while truck_weights:
bridge.pop(0)
if (sum(bridge)+truck_weights[0])>weight:
bridge.append(0)
else:
truck=truck_weights.pop(0)
bridge.append(truck)
time+=1
return time+len(bridge)
5番目のテストケースでは、時間がほぼ合格しました.Reference
この問題について([プログラマーlv 2]橋を渡るトラックPython), 我々は、より多くの情報をここで見つけました https://velog.io/@94kdh0823/프로그래머스-lv2-다리를-지나는-트럭-pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol