728x90
반응형
🔗 문제 링크
https://www.acmicpc.net/problem/2164
반응형
728x90
👩💻 코드
#include <iostream>
#include <queue>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int N;
cin >> N;
queue<int> q;
for(int i=1; i<=N; i++){
q.push(i);
}
while(q.size() > 1){
q.pop();
int f = q.front();
q.pop();
q.push(f);
}
cout << q.front();
return 0;
}
📝 풀이
큐의 선입선출 성질을 이용하면 간단히 풀 수 있습니다.
1부터 N까지의 숫자 카드를 큐에 push 합니다.
가장 위에 있는 카드를 버린다 -> pop()
그다음 가장 위에 있는 카드 -> q.front()
가장 아래로 옮긴다 -> q.push()
이 과정을 q에 하나의 카드만 남을 때까지 반복 후 q의 front를 출력합니다.
728x90
반응형
'코딩테스트 > 백준' 카테고리의 다른 글
[백준] 1377번: 버블 소트 (2) | 2024.09.07 |
---|---|
[백준] 11286번 : 절댓값 힙 (0) | 2024.09.07 |
[백준] 17298번 : 오큰수 (0) | 2024.09.06 |
[백준] 1874번 : 스택 수열 (1) | 2024.09.06 |
[백준] 11003번 : 최솟값 찾기 (1) | 2024.09.06 |