큐 예제 - 1
Last updated
Last updated
n(카드 개수)
myQueue(카드 저장 자료구조)
for n :
큐에 카드 저장
while 카드가 1장 남을 때까지:
맨 위의 카드를 버린다: popleft()
맨 위의 카드를 가장 아래의 카드 밑으로 이동: append(popleft())
마지막으로 남은 카드 출력from collections import deque
n = int(input())
myQueue = deque()
for i in range(1, n+1):
myQueue.append(i)
while len(myQueue) > 1:
myQueue.popleft()
myQueue.append(myQueue.popleft())
print(myQueue[0])import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.Queue;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
Queue<Integer> qu = new LinkedList<>();
for (int i = 1; i <= n; i++) {
qu.offer(i);
}
while (qu.size() > 1) {
qu.poll();
qu.offer(qu.poll());
}
System.out.println(qu.poll());
}
}