#P2284. 2284 - 计算好数

2284 - 计算好数

题目描述

若将一个正整数化为二进制数,在此二进制数中,我们将数字1的个数多于数字 00 的个数的这类二进制数称为好数。

例如:

(13)10=(1101)2(13)10 = (1101)2 ,其中 11 的个数为 3300 的个数为 11 ,则此数是好数;

(10)10=(1010)2(10)10 = (1010)2 ,其中 11 的个数为 2200 的个数也为 22 ,则此数不是好数;

(24)10=(11000)2(24)10 = (11000)2 ,其中 11 的个数为 2200 的个数为 33 ,则此数不是好数;

对于给定的 NN ,写程序求出 1N1\sim N 之中(包括 11NN )中的好数个数。

输入

一个整数,题目中的 N(N1000)N (N \le 1000)。

输出

一个整数,表示 1N1\sim N 之中(包括 11NN )中的好数个数。

样例

10
5

来源

电子学会二级 202106真题