一个正整数改写成2进制后,如果数字1的个数是偶数个,那么就称这个正整数是‘好数’.例如,正整数 6=(110
题目
一个正整数改写成2进制后,如果数字1的个数是偶数个,那么就称这个正整数是‘好数’.例如,正整数 6=(110
上面没打完这里继续:就是一个‘好数’.将所有的‘好数’按小到大排列,第2010个是什么?
答案
#include
#define ORDER 2010
/**
* 判断指定的正整数是否为好数(二进制表示时有偶数位 1)
* @param dwSample 指定的正整数
* @return 指定的正整数是好数则返回非零,否则返回零
*/
int isGood(unsigned long dwSample) {
int iCount;
if (dwSample == 0) {
return 0;
}
/* 依次将每一位移动到最低位 */
for (iCount = 0; dwSample != 0; dwSample >>= 1) {
/* 最低位为 1 则计数 */
if (dwSample & 1) {
++iCount;
}
}
return (iCount % 2) == 0;
}
void main() {
unsigned long dw;
int iCount;
/* 在双字节正整数范围内寻找 */
for (iCount = 0,dw = 1; dw != 0; ++dw) {
if (isGood(dw)) {
++iCount;
if (iCount == ORDER) {
printf("Found:%d !
",dw);
return;
}
}
}
printf("Failed!
");
}
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
最新试题
- 观察一列数:负3,9,负27,81……,根据你发现的规律,请写出第n个数(n为正整数)为
- 用 错位相减 法计算1+3分之1+3的2次方分之1+...+3的2000次方分之1
- 金属材料三种常见的晶体结构
- Singing English songs made her more interested in learning English.是什么句型?
- 如图,在平行四边形ABCD中,AD=2AB,M是AD的中点,CE⊥AB于E,如果∠CEM=40°,求∠DME的度数.
- 甲、乙、丙三人称体重.甲、乙共重100kg,乙、丙共重115kg,甲、丙共重95kg.
- really和 real的区别
- 有3个自然数a,b,c已知a×b=6,b×c=15,a×c=10,则a×b×c=_.
- 揭露敌人惨败的可耻下场的词语
- A除以A+1减1除以A的平方减2的差,其中A=-2,求值
热门考点