大牛们进来

syai syai 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
下面是我随便做了下赛马网一道题,为啥总是通不过。
题目链接地址http://acm.acmcoder.com/showproblem.php?pid=1002很简答就是大数相加,在leetcode也做过,但是这个oj通不过,大神来说说
string sum(string& a, string& b){
if (a.length() > b.length())a.swap(b);
int len1 = a.length(), len2 = b.length();
int flags = 0;//
string ret(len2+1,'0');
int i = len1-1,j=len2-1;
while(i>-1){
int tmp = a[i] + b[j] + flags-2*'0';
flags = tmp / 10;
tmp %= 10;
ret[j + 1] += tmp;
--i; --j;
}
while (j > -1){
int tmp = b[j] + flags-'0';
flags = tmp / 10;tmp %= 10;
ret[j + 1] += tmp;
--j;
}
ret[0] += flags;
int from = 0;
while (ret[from] == '0')++from;
return ret.substr(from);
}
int main(){
int T = 0; cin >> T;
for (int i = 1; i < T + 1;++i)
{
string a, b;
cin >> a >> b;
cout << "Case " <<i<< ":" <<"\n"
<< a << " + " << b<<" = " << sum(a, b);
if (i < T)cout<<"\n" << endl;
}
}
...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
syai
数据结构与算法 33,026 成员 35,334 内容