京东-2017-异或
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了京东-2017-异或相关的知识,希望对你有一定的参考价值。
题目描述 :
现在输入两个n位二进制数,输出它们异或结果的十进制答案。上述样例中异或的二进制结果为1000,转化成十进制就是8。
输入:
输入有三行,第一行一个数n(1<=n<=20),接下来两行有两个n位二进制数。输入的二进制数可能有前导零。
输出
输出一个数,异或结果的十进制数值,不要输出前导零。
样例输入
4
1100
0100
输出:异或的十进制结果。
其实很无脑,把数值转成十进制直接用异或来算就行。
#include<bits/stdc++.h> using namespace std; char s[100]; int getnum(int n){ int ans = 0; for(int i = 0; i < n; i++){ ans *= 2; ans += s[i] - ‘0‘; } return ans; } int main(){ int n; scanf("%d", &n); scanf("%s", s); int a = getnum(n); scanf("%s", s); int b = getnum(n); printf("%d\n", a ^ b); return 0; }
以上是关于京东-2017-异或的主要内容,如果未能解决你的问题,请参考以下文章