#include <iostream> #include <list> using namespace std; int main() { ios::sync_with_stdio(0); cin.tie(0); list<int> L; list<int>::iterator it; int N, K; cin >> N >> K; for(int i=1;i<=N;i++){ L.push_back(i); } it = L.begin(); cout << '<'; while(L.size()) { for(int i=1;i<K;i++) { it++; if(it == L.end()) it = L.begin(); } string s = (L.size()>1) ? ", " : ">"; cout << *it << s; it = L.erase(it); if(it == L.end()) it = L.begin(); } }
- 원형 리스트처럼 구현하기 위해 검사해서 end()면 begin()으로 지정