二进制?十进制!
题目链接:nowcoder 218048
到主站看:https://blog.csdn.net/weixin_43346722/article/details/116779653
题目大意
给你两个十进制表示的数,要你把它们转成二进制,然后再看做十进制做加法。
思路
直接按照题目模拟就可以了。
代码
#include<cstdio> #include<iostream> using namespace std; int ca[100001], cb[100001]; int na, nb, a, b; int main() { scanf("%d %d", &a, &b); while (a) { ca[++na] = a % 2; a >>= 1; } while (b) { cb[++nb] = b % 2; b >>= 1; } for (int i = max(na, nb); i >= 1; i--) printf("%d", ca[i] + cb[i]); return 0; }