C언어
boj 백준 1158번 요세푸스 문제 한번에 통과 !
mcdn
2020. 8. 12. 16:31
반응형
#include <iostream>
#include <list>
using namespace std;
int main(void)
{
int n, k;
cin >> n >> k;
list <int> numlist;
for (int i = 0; i < n;i++)
numlist.push_back(i + 1);
int cnt = 0;
int temp = 0;
cout << "<";
while (!numlist.empty())
{
cnt++;
if (numlist.size() == 1)
{
cout << numlist.front() << ">";
numlist.pop_front();
break;
}
if (cnt % k == 0)
{
cnt = 0;
cout << numlist.front() << ", ";
numlist.pop_front();
}
else
{
temp = numlist.front();
numlist.push_back(temp);
numlist.pop_front();
}
}
return (0);
}
계속 옮기는 식으로 함
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
반응형