#include <iostream>
#include <queue>
using namespace std;
int main(){
int N, K;
queue<int>circle;
cin >> N >> K;
for(int i=0; i<N; i++)
circle.push(i+1);
cout << "<";
while(circle.size()-1){
for(int i=0; i<K-1; i++){
circle.push(circle.front());
circle.pop();
}
cout << circle.front() << ",";
circle.pop();
}
cout << circle.front() << ">";
return 0;
}
처음에는 원형 큐를 생각하고 접근해야 하나 싶었는데
큐를 사용해서 직접 K-1번씩 큐에서 숫자를 빼내어 뒤로 보내고 K번쩨 숫자를 꺼내어 가는 식으로 구현함
'스터디 > 알고리즘' 카테고리의 다른 글
[백준 5212] 지구 온난화 (0) | 2022.01.13 |
---|---|
[백준 2164] 카드2 (0) | 2022.01.10 |
[백준 22864] 피로도 (0) | 2022.01.10 |
[백준 2606] 바이러스 (0) | 2022.01.10 |
[백준 20436] ZOAC 3 (0) | 2022.01.10 |