#include<stdio.h> #include<math.h> int a[1000010]; int n; int main() { int i,j; a[1]=1; a[2]=1; a[3]=0; for(i=1;i<=17;i++) { int x=pow(2.0,i); a[x]=1; } for(i=4;i<100000;i++) { if(a[i]!=1) for(j=i-1;j>=(i+1)/2;j--) { if(a[j]!=a[i-j]) {a[i]=1;break;} if(j==1) a[i]=0; } } while(scanf("%d",&n)!=EOF) { if(a[n]) printf("Yes\n"); else printf("No\n"); } return 0; } |
Double click to view unformatted code.