Acwing 4201. 01数


 1 #include
 2 using namespace std;
 3 
 4 int main()
 5 {
 6   int n,ans=0;
 7   cin>>n;
 8   for(int i=1;i<=(1<<9);i++)//10位数,考虑每位取0.1转成2进制表示
 9   {
10     int t=0;
11     for(int j=9;j>=0;j--)t=t*10+((i>>j)&1);//还原这位数字;
12     if(t<=n)ans++;
13   }
14   cout<endl;
15 }

相关