题目描述 Description
怪盗基德 VS OIBH
第二话
怪盗基德第三次来到熟悉的OIBH总部。屡屡失败的OIBH这次看守的是The Eye of Moon。还是那个
房间,还是那扇门,不同的是OIBH对密码锁进行了改进。这次屏幕上只显示一个数n(基德:这是
改进了还是退化了?)。
密码生成方法:设集合A中A={1,2,...,n},B为A子集。对于B中任意一个元素x,2x均不在集合B中。
B中元素数目最大值即为密码。
输入描述 Input Description
一行,一个整数n(1<=n<=maxlongint)
输出描述 Output Description
只有一个整数m,表示B中元素最大值
样例输入 Sample Input
100
样例输出 Sample Output
67
数据范围及提示 Data Size & Hint
OIBH在6s内就会发现,所以每个点只有1s时间给你
下面附上代码:
#include<stdio.h>
#include<string.h>
using namespace std;
int main()
{
int n, ans = 0, temp = 0;
scanf("%d", &n);
while(temp < n)
{
ans += (n+1)/2;
n /= 4;
}
printf("%d\n", ans);
return 0;
}