Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
168474 | C班-陈乐 | 被限制的加法 | C++ | 通过 | 100 | 0 MS | 248 KB | 622 | 2024-08-20 11:01:28 |
#include <bits/stdc++.h> using namespace std; string add(string a,string b) { string ans(max(a.size(),b.size())+1,'0'); for(int i=ans.size()-1,l1=a.size(),l2=b.size(); i>=0; i--) { int t=(ans[i]-'0')+(l1<1?0:a[--l1]-'0')+(l2<1?0:b[--l2]-'0'); ans[i]=t%10+'0'; ans[i-1]=(ans[i-1]-'0'+t/10)+'0'; } for(; ans[0]=='0' && ans.size()>1; ans.erase(0,1)); return ans; } int main() { int n; cin >> n; string s1 = "",s2 = ""; for (int i = 1 ; i <= n ; i ++) { char c1,c2; cin >> c1 >> c2; s1 += c1; s2 += c2; } cout << add(s1,s2); return 0; }