알고리즘/프로그래머스
2024. 5. 13.
[파이썬] 프로그래머스 알고리즘 고득점 Kit - 큐 / 기능개발 완벽해설
문제 해설 즉 작업의 갯수 progresses가 있을 때, 각 프로그램들은 매 시간마다 speeds의 개발 속도만큼 개발이 진행된다. 여기서 주목해야 할 점은 "뒤의 기능이 먼저 개발될 수는 있으나, 앞의 기능이 배포될 때 기다렸다가 함께 배포됩니다." 라는 조건이 주어졌다. 즉 이 조건에서 앞에서부터 프로그램이 배포된다는 것을 통해서 큐 자료구조를 활용하라는 의미라고 추측할 수 있다. 큐 자료구조는 위처럼 First In First Out (FIFO)의 구조를 지니고 있다. 즉 첫번째로 들어간 요소가 가장 먼저 나가는 매커니즘을 가지고 있다. 참고로 이를 리스트를 활용하여 표현하면 Enqueue는 list.append(넣을 요소), Dequeue는 0번째 요소를 방출시키는 list.pop(0)이 될..