Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1340 Accepted Submission(s): 891 Problem Des ...
Game
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1340 Accepted Submission(s): 891
The game is played on a set of positive integers from 1 to n.
In one step, the player can choose a positive integer from the set, and erase all of its divisors from the set. If a divisor doesn't exist it will be ignored.
Alice and Bob choose in turn, the one who cannot choose (current set is empty) loses.
Alice goes first, she wanna know whether she can win. Please judge by outputing 'Yes' or 'No'.
Input There might be multiple test cases, no more than 10. You need to read till the end of input.
For each test case, a line containing an integer n. (1≤n≤500)
Output A line for each test case, 'Yes' or 'No'.
Sample Input 1
Sample Output Yes 之前邀請賽的原題,當是寫了幾個數發現的規律。但是不知道為什麼。。。。 其實可以把 1~n 轉化為 2~n 如果2~n 先手必敗的話,那麼先手可以第一次選1,把必敗狀態轉移給後手; 如果2~n 先手必勝的話,多一個1其實是沒有影響的。 證畢;
1 #include <bits/stdc++.h> 2 #define lowbit(x) (x)&(-x) 3 using namespace std; 4 int main() 5 { 6 int n; 7 while(~scanf("%d",&n)) 8 cout<<"Yes"<<endl; 9 }