Codeforce 9C - Hexadecimal's Numbers
Posted 媛养成计划
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforce 9C - Hexadecimal's Numbers相关的知识,希望对你有一定的参考价值。
One beautiful July morning a terrible thing happened in Mainframe: a mean virus Megabyte somehow got access to the memory of his not less mean sister Hexadecimal. He loaded there a huge amount of n different natural numbers from 1 to n to obtain total control over her energy.
But his plan failed. The reason for this was very simple: Hexadecimal didn‘t perceive any information, apart from numbers written in binary format. This means that if a number in a decimal representation contained characters apart from 0 and 1, it was not stored in the memory. Now Megabyte wants to know, how many numbers were loaded successfully.
Input
Input data contains the only number n (1 ≤ n ≤ 109).
Output
Output the only number — answer to the problem.
Example
Input
10
Output
2
Note
For n = 10 the answer includes numbers 1 and 10.
给你一个数,求1到这个数中有多少个只有1,0组成的数
解题思路:可以深搜,也可以直接构造
1 #include<stdio.h> 2 3 long long sum, sum1; 4 5 void dfs(long long a) { 6 if(sum<a) 7 return ; 8 sum1++; 9 dfs(a*10); 10 dfs(a*10+1); 11 } 12 13 int main() { 14 while(scanf("%lld", &sum)!=EOF) { 15 sum1 = 0; 16 17 dfs(1); 18 19 printf("%lld\n", sum1); 20 } 21 return 0; 22 }
以上是关于Codeforce 9C - Hexadecimal's Numbers的主要内容,如果未能解决你的问题,请参考以下文章