0分求调
查看原帖
0分求调
1094827
DY0601楼主2025/6/15 16:51
#include<bits/stdc++.h>
using namespace std;
int main(){
    int l;
    string s,d;
    cin>>l;
    cin.ignore();
    getline(cin,s);
    getline(cin,d);
    vector<int> n,m,k;
    for(int i=s.size()-1;i>=0;--i){
        char c=s[i];
        n.push_back(isdigit(c)?c-'0':c-'A'+10);
    }
    for(int i=d.size()-1;i>=0;--i){
        char c=d[i];
        m.push_back(isdigit(c)?c-'0':c-'A'+10);
    }
    int c=0;
    for(int i=0;i<max(n.size(),m.size())||c;++i){
        int a=(i<n.size())?n[i]:0;
        int b=(i<m.size())?m[i]:0;
        int sum=a+b+c;
        k.push_back(sum%l);
        c=sum/l;
    }
    bool z=1;
    for(int i=k.size()-1;i>=0;--i){
        if(k[i]!=0||!z){
            cout<<(k[i]<10?(char)('0'+k[i]):(char)('A'+k[i]-10));
            z=0;
        }
    }
    if(z) cout<<0;
    cout<<endl;
    return 0;
}

下载样例过了,可提交错了

2025/6/15 16:51
加载中...