Problem Solving94 [Queue] 요세푸스의 선물 큐: 한쪽 끝에서는 삭제만 가능하고 다른 한쪽 끝에서는 추가만 가능한 추상 데이터 타입 FIFO: First-In, First-Out enqueue: 큐의 rear에 새로운 항목을 추가 dequeue: 큐의 front에 있는 항목을 제거 요세푸스는 N명의 제자들에게 선물을 주고 싶었으나, 선물이 하나 밖에 없었다. 그래서 다음과 같은 규칙을 가지고 게임을 해서 마지막으로 남은 한 사람에게만 선물을 주기로 했다. 모든 제자들은 무작위로 1번부터 N번까지 번호를 부여받아 번호 순서대로 시계방향으로 원을 이루어 앉는다.게임의 각 단계에서 시작 위치에 있는 제자는 1을 외치고, 시계방향으로 돌아가며 1씩 증가한 숫자를 외친다.t번째 단계에서 t^3, 즉, t의 세제곱수를 외치는 제자는 게임에서 탈락한다.t+1번.. 2022. 12. 13. [Stack] 주차 관리인 스택: LIFO(Last-In, FIrst-Out) 스택 정렬: 스택의 내용을 빈 스택 하나를 이용해서 정렬하는 알고리즘 강의교재에서 본 주차장의 주차 관리인에게 주차 주문이 도착했다. 이 주차 주문에 따르면, 1번부터 N번까지의 차량이 오른편에서 차례대로 도착하고 있을 때, 왼편의 주차 공간에 주차 주문의 차량 번호 순서에 따라 주차를 해야 한다. 이 주차장은 스택처럼 생긴 하단부의 임시 공간을 이용해서 주차 순서를 조정할 수밖에 없음을 알고 있을 것이다. 또한, 한 번 주차장 안으로 들어온 차량은 거꾸로 빼낼 수도 없다. 그렇기 때문에, 때로는 주차 주문에 적힌 주차 순서가 주차하기가 불가능한 순서일 수도 있다. 예를 들어, 주차 계획의 차량 번호 순서가 다음과 같다고 하자. 5 4 1 2 3 차량의.. 2022. 12. 13. 이전 1 ··· 21 22 23 24 다음