본문 바로가기
알고리즘

[프로그래머스- 다리를 지나는 트럭][파이썬]-17일차

by Jyujae 2022. 6. 11.

https://programmers.co.kr/learn/courses/30/lessons/42583

-- key point: 오직 time 과 bridge 만 고려해주는 것

 

1. 내 문제

먼저 나는 기다리는 트럭 리스트, 다리 위 리스트, 완료된 리스트 3개로 만들어서 하려다 보니

어떤 리스트를 pop하고 append 하고에서 시간이 많이 쓰였고, 잔 조건들 때문에 어려움을 겪었다.

생각해보니, 완료된 리스트는 고려할 필요가 애초에 없었고,

다리를 [0]이 bridge_length 만큼 있는 리스트로 만들어서, bridge의 0번 인덱스를 1초마다 삭제 해버리는 과정을 통해서

어려워 했던 bridge위에서의 시간 계산 로직을 해결했다.

 

2. bridge만 고려하기

먼저 bridge 라는 리스트를 통해서 매초마다 [0] 인덱스를 pop 해주었다

-> 1초 후면 완료될 트럭들이 [0] 인덱스에 있으니, 이걸 초가 흐르자마자 삭제 해준다

--> 이렇게 해야 sum(bridge) 코드도 오류 없이 작동한다

 

잔조건 없이 무게 감당 여부로 if 문을 짜고, 안된다면 그냥 트럭만 완료 단계로 보내는 로직을 수행시켰다.

 

문제의 포인트가 '몇 초'니까 time count 에만 집중해서 문제에 접근해보자