规律题_1

来源:互联网 发布:cp1200写频软件下载 编辑:程序博客网 时间:2024/06/05 07:14

Description

N children standing in circle who are numbered 1 through N clockwise are waiting their candies. Their teacher distributes the candies by in the following way:

First the teacher gives child No.1 and No.2 a candy each. Then he walks clockwise along the circle, skipping one child (child No.3) and giving the next one (child No.4) a candy. And then he goes on his walk, skipping two children (child No.5 and No.6) and giving the next one (child No.7) a candy. And so on.

Now you have to tell the teacher whether all the children will get at least one candy?

Input

The input consists of several data sets, each containing a positive integer N (2 ≤ N ≤ 1,000,000,000).

Output

For each data set the output should be either "YES" or "NO".

Sample Input

23 4

Sample Output

YESNOYES


属于规律题,可以尝试打表发现规律,当n是2的指数幂时YES


<pre name="code" class="cpp">#include<iostream>#include<cstring>using namespace std;int main(){    int n;    while(cin>>n)    {      while(n%2==0){        n=n/2;      }      if(n==1) cout<<"YES"<<endl;      else  cout<<"NO"<<endl;    }    return 0;}


0 0
原创粉丝点击