输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数。
输入格式:
输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式:
输出 A+B 的 D 进制数。
输入样例:
123 456 8
输出样例:
1103
注意边界条件,和为0,因为0也是整数
#include <bits/stdc++.h>
using namespace std;
int main() {
int a,b,d;
long sum;
cin>>a>>b>>d;
sum = a+b;
if(a+b==0){
cout<<0;
return 0;
}
vector<int>v;
while(sum!=0){
v.push_back(sum%d);
sum /= d;
}
for(int i=v.size()-1;i>=0;i--)cout<<v[i];
return 0;
}
本文介绍了一种将两个非负十进制整数相加,并将结果转换为D进制数的算法。输入包括两个整数A和B及目标进制数D,输出为A+B的D进制表示。算法使用了标准C++库,通过不断取余和除以基数的方式实现了转换。
1003

被折叠的 条评论
为什么被折叠?



