https://[Log in to view URL]
1. 숫자 N을 입력받는다.
2. 카드 뭉치 역할을 할 벡터(q)를 만들고, 1부터 N까지 차례대로 넣는다. (push_back)
3. 현재 진짜 맨 앞 카드가 어디인지 가리킬 'front' 변수를 0으로 정한다.
4. 큐 안에 남은 카드가 1장보다 많을 때까지 반복한다:
(남은 카드 개수 계산법: q.size() - front)
- [동작 1: 카드 버리기]
-> 현재 맨 앞(front)에 있는 카드를 버린 셈 친다.
-> front를 1 증가시킨다. (pop)
- 만약 남은 카드가 1장이라면, 즉시 반복을 멈춘다.
- [동작 2: 카드 옮기기]
-> 현재 맨 앞(front)에 있는 카드가 무엇인지 확인한다. (q[front])
-> 그 카드를 벡터의 맨 뒤에 새로 추가한다. (push_back)
-> 뒤로 보냈으니, 원래 있던 앞의 카드는 버린 셈 친다.
-> front를 1 증가시킨다. (pop)
5. 반복이 끝나면, 마지막으로 살아남은 카드(q[front])를 출력한다.
To embed this project on your website, copy the following code and paste it into your website's HTML: