백준 C++ 11866 요세푸스 문제 0

jaranda·2021년 12월 10일
0

11866번 요세푸스 문제 0


문제풀이

#include <iostream>
#include <queue>
using namespace std;
int main(void)
{
    queue<int> q;
    int n, k;

    cin >> n >> k;
    for (int i = 0; i < n; i++)
    {
        q.push(i + 1);
    }

    cout << "<";
    while (n-- != 0)
    {
        for (int i = 0; i < k; i++)
        {
            if (i == k - 1)
            {
                cout << q.front();
                if (q.size() != 1)
                {
                    cout << ", ";
                }
            }
            else
            {
                q.push(q.front());
            }
            q.pop();
        }
    }
    cout << ">";
}

무슨문제인지 이해못했다가 그려보니까 이해됐다.
큐를 활용했고, for 안의 if 에서 예제값인 3으로 고정해둔상태로 제출했다가 틀렸다.. 부주의함으로 인해 틀릴때마다 아쉽다..

profile
자라는 개발자

0개의 댓글

관련 채용 정보