文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
背景 Background
怪盗基德 VS OIBH
第三话
描述 Description
怪盗基德第三次来到熟悉的OIBH总部。屡屡失败的OIBH这次看守的是The Eye of Moon。还是那个
房间,还是那扇门,不同的是OIBH对密码锁进行了改进。这次屏幕上只显示一个数n。
密码生成方法:设集合A中A={1,2,…,n},B为A子集。对于B中任意一个元素x,2x均不在集合B中。
B中元素数目最大值即为密码。
输入格式 Input Format
一行,一个整数n(1<=n<=maxlongint)
输出格式 Output Format
只有一个整数m,表示B中元素最大值。
Tip:自己拿笔写一写就出来了。。。奇数全部可以,奇数的2倍不行,奇数的4倍又可以。。。
#include <stdio.h>
int calc(int x){
if (x==0) return 0;
else return (x+1)/2+calc(x/4);
}
int main(){
int n;
scanf(“%d”,&n);
printf(“%d”,calc(n));
system(“pause”);
return 0;
}
转载请注明:Slyar Home » Vijos P1385 盗窃-月之眼 C语言版