有多少位不同
2018-01-12 17:08
148 查看
给定两个十进制正整数A和B,请计算出A和B用二进制表示时有多少位是不同的。
例如,“3”的二进制表示为“11”,“9”的二进制表示为“1001”,“11”不足4位,不足部分实际上为0,即“0011”,因此二者从右至左第2、4位不同,所以3和9用二进制表示时有两位不同。
Input输入包括两行,第1行是一个整数n,表示有n组测试数据。紧接着n行,每行包括两个十进制正整数A和B,A、B之间用空格隔开。 Output输出有n行,为每组测试数据中A和B用二进制表示时不相同的位数。 Sample Input
Sample Output
例如,“3”的二进制表示为“11”,“9”的二进制表示为“1001”,“11”不足4位,不足部分实际上为0,即“0011”,因此二者从右至左第2、4位不同,所以3和9用二进制表示时有两位不同。
Input输入包括两行,第1行是一个整数n,表示有n组测试数据。紧接着n行,每行包括两个十进制正整数A和B,A、B之间用空格隔开。 Output输出有n行,为每组测试数据中A和B用二进制表示时不相同的位数。 Sample Input
1 3 9
Sample Output
2
#include<stdio.h> int main() { int n; int a,b,c,count; scanf("%d",&n); while(n--) { scanf("%d%d",&a,&b); count=0; c=a^b; //^位异,不同的话为一,相同为零 while(c) { if(c&1) count++; c>>=1; } printf("%d\n",count); } return 0; }
相关文章推荐
- 九度OJ 题目1072:有多少不同的面值组合? 天勤OJ 1400: 邮票
- 二、给定一个 n 行 m 列的地牢,其中 '.' 表示可以通行的位置,'X' 表示不可通行的障碍,牛牛从 (x0 , y0 ) 位置出发,遍历这个地牢,和一般的游戏所不同的是,他每一步只能按照一些指定的步长遍历地牢,要求每一步都不可以超过地牢的边界,也不能到达障碍上。地牢的出口可能在任意某个可以通行的位置上。牛牛想知道最坏情况下,他需要多少步才可以离开这个地牢。
- 用c语言实现,两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
- 一个栈(无穷大)的进栈序列为1,2,3,..n,有多少个不同的出栈序列? (卡特兰数)
- C程序:二进制表示中有多少个"1″;二进制表示中有多少位是不同的
- 问题五十七: 楼梯有n阶台阶,上楼可以一步上1阶,也可以一步上2阶,编程序计算共有多少种不同的走法?
- 求两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
- 求一个数二进制位中有多少个 1 的不同解法
- 把一张面值为一元的纸币,换成一分,二分,五分的硬币,共有多少种换法?编程输出每一种不同的换法。 如果每种硬币至少有一个,编程求出所需硬币最少的数目及换法。
- POJ 1611 The Suspects 并查集 (统计不同一个树的其他树有多少个)
- 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同? 输入例子: 1999 2299 输出例子:7
- 现有一个m * n的网格,从最左上角出发,每次只能向右或者向下移动一格,问有多少种不同的方法可以到达最右下角的格子
- [乐意黎转载]依依服装店某一天将两件不同的衣服均以每件120元出售,结果一件赚20%,另一件赔20%,那么商店老板是赚了,还是亏了?赚(亏)了多少元?
- 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
- 求正整数A和正整数B的二进制表示中有多少位是不同的
- 有6种不同颜色的球,每种球有无数个。现在取5个球,求取出5、4、3、2种不同颜色球的概率分别为多少
- 随机生成k个范围为1-n的随机数,其中有多少个不同的随机数?
- 在n个球中,任意取出m个(不放回),求有多少种不同取法 ——Java/递归/蓝桥杯
- 递归 - 求 n 个球中取 m 个不同的球,有多少种取法?
- 世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么?