#YC383. 位运算:异或^
位运算:异或^
题目背景
位运算是非常常见的程序设计操作,通常为对整数的二进制进行运算。
按位异或运算的运算符为 ^ ,也可以用xor,运算规则如下:
两个整数进行异或运算的原理:A,B二进制形态对齐,然后对每一位进行操作,如果A,B在同一个二进制位置上的值不同(即一个1,一个0),那么答案在该二进制位上是1,否则结果是0 。
举例:
10101 ^ 111
首先要保证长度一致,不一致可以采用高位补0的方法
10101 ^ 00111
我们对齐
10101
^ 00111
-------
10010
逐位运算,同一个二进制位置上的值不同,则答案的二进制该位上是1,否则为0 。所以答案为10010。
我们可以直接通过cout<<(A^B);来看看两个整数或运算的结果
题目描述
输入两个二进制数,请你计算两个数按位异或运算的结果。不能有前导0。
输入
输入一共两行,每行一个二进制字符串,保证长度均不超过1000且不包含前导0。
输出
输出这两个二进制串异或运算后的二进制结果,请不要输出多余的前导0,若答案为0,输出一个0。
样例
10101
111
10010
Related
In following contests:
In following homework: