알고리즘/BOJ

백준 11886번 조세퍼스 문제 0

꾸준함. 2019. 2. 21. 13:27

문제 링크입니다: https://www.acmicpc.net/problem/11866


N과 M의 범위가 작기 때문에 그대로 시뮬레이션을 돌리면 AC를 받을 수 있는 문제였습니다.

시간복잡도는 O(N^2)입니다.


#include <iostream>

#include <queue>

using namespace std;

 

int main(void)

{

        ios_base::sync_with_stdio(0);

        cin.tie(0);

        int N, M;

        cin >> N >> M;

 

        queue<int> q;

        for (int i = 1; i <= N; i++)

                 q.push(i);

 

        cout << "<";

        while (!q.empty())

        {

                 for (int i = 0; i < M - 1; i++)

                 {

                         int front = q.front();

                         q.pop();

                         q.push(front);

                 }

                

                 cout << q.front();

                 if(!(q.size() == 1))

                         cout << ", ";

                 q.pop();

        }

        cout << ">\n";

        return 0;

}


개발환경:Visual Studio 2017


지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형