超级数学家


Submit solution

Points: 10
Time limit: 1.0s
Memory limit: 4M

Author:
Problem type
Allowed languages
C++

超级数学家

Shapur 是一位极其有天赋的学生。他在组合数学、代数、数论、几何、微积分等方面都非常出色。他不仅聪明,而且速度极快!他可以在一秒钟内计算出\(10^{18}\)个数字的和。 一天,在公元 230 年,Shapur 想知道是否有人能比他更快地进行计算。因此,他举行了一场非常伟大的比赛,邀请大家参加。 在比赛中,他给了参赛者许多不同的数字对。每个数字都由 \(0\) 和 \(1\) 组成。参赛者需要写出一个新数字,表示给定数字对的结果。规则很简单:答案的第 \(i\) 个数字是 \(1\) 当且仅当给定数字对的第 \(i\) 个数字不同;如果相同,则第 \(i\) 个数字是 \(0\)。 Shapur 制作了许多数字,并先尝试了自己的速度。他看到自己可以在眨眼之间完成长度为无穷大的数字的操作!他总是给出正确的答案,因此他期望参赛者也能给出正确的答案。他是个好人,所以他不会给任何人很大的数字,并且每次给出的数字长度是相同的。

现在你将参加 Shapur 的比赛。看看你是否比他更快、更准确。

输入

输入的每个测试包含两行。每行包含一个数字。保证这些数字只由 \(0\) 和 \(1\) 组成,并且它们的长度相同。数字可以以 \(0\) 开头。每个数字的长度不超过 \(100\)。

输出

输出一行——对应的答案。不要省略前导的 \(0\)。

输入 1
1010100  
0100101
输出 1
1110001
输入 2
000  
111
输出 2
111
输入 3
1110  
1010
输出 3
0100
输入 4
01110  
01100
输出 4
00010
解题思路

这个问题要求你对两个由 \(0\) 和 \(1\) 组成的二进制数字进行逐位比较。如果两个数字的对应位不同,则结果为 1;如果相同,则结果为 0。你可以逐位遍历两个数字并比较相应的位,构造出最终的结果。


Comments

There are no comments at the moment.