ostapdontstop

Jul 30th, 2021 (edited)
190
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <list>
  3.  
  4. int main() {
  5.     int N = 10;
  6.     int k = 3;
  7.     // std::cin >> N >> k;
  8.     std::list<int> L;
  9.     for (int i = 1; i <= N; i++) {
  10.         L.push_back(i);
  11.     }
  12.  
  13.     auto it = L.begin();
  14.  
  15.     // std::cout << *it << '\n';
  16.  
  17.     for (;;) {
  18.  
  19.         if (L.size() == 1) {
  20.             std::cout << *(L.begin());
  21.             break;
  22.         }
  23.         for (int ik = 1; ik < k; ik++) {
  24.             it++;
  25.             if (it == L.end()) it = L.begin();
  26.         }
  27.  
  28.         // std::cout << *it << '\n';
  29.         auto tit = it;
  30.         it++;
  31.         L.erase(tit);
  32.  
  33.     }
  34.     return 0;
  35. }
RAW Paste Data