二进数iq题

来源:百度知道 编辑:UC知道 时间:2024/05/21 23:03:42
在很久前,有一条农村叫「二进村」,村内的所有动物和牲畜都能够和农夫对话。可是,村内只有农夫懂得文字,而动物只懂得辨认颜色。有一天,农夫要比较初出生的小鸡的生长速度,於是他吩咐公鸡爸爸,每当一只小鸡出生,都在它们颈上挂一块牌子,牌上印有不同的数字和颜色。例如第一只出生小鸡的牌子有1 和红色,第二只出生小鸡的牌子有2和黄色,余此类推.

15只小鸡一天一天地成长,过了一个月,农夫想比较它们的高度,於是召集所有小鸡到空地。农夫先吩咐它们任意排成一列.

由於小鸡不懂文字,所以农夫吩咐它们按颜色移动4次。

第1次移动:小鸡颈上的牌子如有红色要向前踏一步,然后向右移,原地站立的小鸡则向左移.

读者可以发现,经过4次移动后,15只小鸡便顺序排列起来,而且农夫可按它们的身高来比较生长速度。

究竟「二进村」的农夫是用什麼方法令15只小鸡顺序排列起来呢?

其实农夫给小鸡的牌子是利用「二进数」来制造的。红色代表2=1;黄色代表2=2;绿色代表2=4;蓝色代表2=8;当二进数位是0不用填色,是1便填上适当颜色。例7=(0111),即填上红、黄、绿三色,而不用填蓝色。

这个是什麼原理??????请详答,谢谢 !!

这就是二进制数字的比较原理
这里我举一个很简单的例子说明
比如说任意两个小鸡他们的出生顺序是a,和b

如果要比较ab的大小,这两个都是2进制的数字
把a写成a1a2a3a4,b写成b1b2b3b4
那比较的方法必然是先比较a1 b1
这两个代表的是蓝色,
所以如果有蓝色的就要靠右,没有蓝色的靠左
如果a1小于b1
必然是a1=0,b1=1
这是后小的就在大的左边
如果a1大于b1,这时
b1=0 a1=1
b必然靠左,a必然靠右
小的还是在大的左边
如果a1=b1
那他们的顺序不需要交换
比较大小就要由下一位数字决定
a2 和b2 也就是绿色
如果他们有大小的分别
一定有小的在左边大的在右边
然后经过第四步比较蓝色的时候不改变顺序
那一定会有最终小的左边大的右边
如果他们没有分别,那就进行黄色的比较
这也一样,如果有大小分别,最终都是小的左边大的右边
如果没有,就比较红色,
因为ab不相等
所以如果前三个都一样,那红色必然有大小分
然后大的右边小的左边
经过后面三步不改变顺序
所以就会有最终小的左边大的右边
所以经过这四个步骤
必然比较出ab的大小
然后小的一定在左,大的一定在右
这个对于任意两个不相等的数字都是成立的
所以最终排出来的1-15就是从左到右从小到大
1号最先出生,年龄最大,15号最后出生年龄最小
这是后就可以直接比较身高了了。
如果不明白或者不能在大脑模拟我所说的以上步骤
那你就做个简单的1-7这样分一分,摆一摆,你会发现无论原来的数字是怎么样的最终的数字都是安顺序从小到大

计数原理啊