반응형
코딩하기 전 생각하기
/*
큐를 사용하자.
큐의 길이가 1이 될 때 까지 다음을 반복한다.
맨 앞의 숫자를 pop한다.
그 다음 맨 앞의 숫자를 pop하고 맨 뒤에 push한다.
마지막 남은 숫자를 출력한다.
*/
코드
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
queue<int> q;
cin >> n;
for ( int i = 1; i <= n; i++ ) {
q.push(i);
}
while ( q.size() > 1 ) {
q.pop();
int tmp = q.front();
q.pop();
q.push(tmp);
}
cout << q.front();
}
느낀점
겨울방학에 자료구조를 예습하면서 풀었던 기억이 난다.
사실 학기 중에는 바빠서 방학 때 공부하는 게 진짜 공부하는 것 같다.
(주의) 기록용으로 작성한 글입니다. 코드가 허접하거나 알고리즘의 효율이 낮을 수 있습니다.
댓글 환영합니다!
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준/BOJ] 10867번 - 중복 빼고 정렬하기 (파이썬) (0) | 2021.07.13 |
---|---|
[백준/BOJ] 11866번 - 요세푸스 문제 0 (C++) (0) | 2021.07.12 |
[백준/BOJ] 2941번 - 크로아티아 알파벳 (C++) (0) | 2021.07.12 |
[백준/BOJ] 5355번 - 화성 수학 (C++) (0) | 2021.07.12 |
[백준/BOJ] 2163번 - 초콜릿 자르기 (C++) (0) | 2021.07.12 |
댓글