除基取余法

#include<bits/stdc++.h>
using namespace std;
stack<int> s;
int main(){
    long long a,b;
    int d;
    cin>>a>>b>>d;
    long c=a+b;
    while(c>0){
        s.push(c%d);
        c=c/d;
    }
    while(!s.empty()){
        cout<<s.top();
        s.pop();
    }
    return 0;
}

上述得分18/20,这是因为没考虑全。比如a+b=0的情况,它应该输出0。而我们的程序不会输出。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
#include<bits/stdc++.h>
using namespace std;
stack<int> s;
int main(){
    long long a,b;
    int d;
    cin>>a>>b>>d;
    long c=a+b;
    if(c==0){cout<<0;return 0;}
    while(c>0){
        s.push(c%d);
        c=c/d;
    }
    while(!s.empty()){
        cout<<s.top();
        s.pop();
    }
    return 0;
}
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄