问题描述 |
---|
规定一种特殊的加法,计算两个加数的和时,按以下3个步骤 (1)把两个加数分别看成二进制数字(去掉前置0),即只要加数不为0,那么对应二进制的最高位必须是1,例如9应看成二进制的1001,而不可以是01001;0看成二进制的0; (2)把二进制形式的加数高位对齐,如果有某个加数二进制位数较少,则低位补0;逐位进行加法,并且不进位,即某一位上0+0=0,0+1=1,1+0=1,1+1=0; (3)算出来的二进制结果最后转换回十进制。 现在已知两个加数a和b,求经过特殊的加法后的结果。 |
输入描述 |
多组案例。一个正整数n,表示案例的数量。(n<=20) 每组案例由两个非负整数a和b组成。(a<=10000,b<=10000) |
输出描述 |
针对每组案例,输出一个整数,表示a、b经过特殊的加法后的结果。 每组案例输出完都要换行。 |
样例输入复制样例 |
2 0 1 3 10 |
样例输出 |
1 6 |
提示说明 |
第2组案例中,3的二进制是11,10的二进制是1010,把11和1010高位对齐、11的低位补0,所以实际上是1100和1010进行逐位加,按照上述规则,加的结果是0110,即十进制的6。 |
相关 |