코딩테스트/프로그래머스
[프로그래머스] 다리를 지나는 트럭 / 파이썬(python)
Jiwon_C
2021. 5. 28. 21:09
# 문제 링크
https://programmers.co.kr/learn/courses/30/lessons/42583
코딩테스트 연습 - 다리를 지나는 트럭
트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이
programmers.co.kr
# Soultion
스택을 이용하여 초마다 한개씩 제거하면서 계산하였다
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
def solution(bridge_length, weight, truck_weights):
answer = 0
q = [0]*bridge_length
while(q):
answer+=1
q.pop(0)
if truck_weights:
if sum(q)+truck_weights[0]>weight:
q.append(0)
else:
q.append(truck_weights.pop(0))
return answer
|
cs |
4. 다리길이만큼의 크기를 가진 리스트 초기화
6. 다리위에 남은 트럭이 없을때까지 진행
8. 제일 끝에 저장된(리스트로는 0번째) 데이터 제거
9. 남은 트럭이 있는 경우에 진행
10. 다리에 올라가있는 트럭의 무게+올라갈 트럭의 무게가 견딜 수 있는 무게보다 크다면
11. 트럭이 올라갈 수 없으므로 0대입
13. 리스트의 마지막에 올라갈 트럭 무게 추가