// UVa 440 - Eeny Meeny Moo #include <iostream> #include <deque> using namespace std; int main() { int n; cin >> n; while (n) { int m = 2; for (;; m++) { deque<int> deq; for (int i = 1; i <= n; i++) deq.push_back(i); deque<int>::iterator I = deq.erase(deq.begin()); for (int i = 2; i < n; i++) { for (int j = 1; j < m; j++) { I++; if (I == deq.end()) I = deq.begin(); } I = deq.erase(I); if (I == deq.end()) I = deq.begin(); } if (*deq.begin() == 2) break; } cout << m << endl; cin >> n; } return 0; }
No comments:
Post a Comment