……
2024-09-17 21:30:30
发布于:上海
13阅读
0回复
0点赞
/*
代码错哪了?
qué tiene de malo el código?
Where did the code go wrong?
Quel est le mauvais Code?
Dov'e' andato storto il codice?
Wo ist der Code schief gelaufen?
Ubi codicus erravit?
Onde é que o código correu mal?
Что не так с кодом?
コードはどこだ?
รหัสผิดตรงไหน
ما هو الخطأ مع رمز ؟
코드가 어디가 틀렸죠?
*/
#include <iostream>
#include <string>
#include <algorithm>
#include <cstring>
using namespace std;
int main()
{
string a,b,c;
int as[1000001],bs[1000001],cs[1000001];
memset(as,0,sizeof(as));
memset(cs,0,sizeof(cs));
memset(bs,0,sizeof(bs));
cin >> a >> b;
if((a.size() < b.size())|| ((a.size() == b.size())&& a < b))
{
swap(a,b);
c += '-';
}
int al = a.size(),bl = b.size(),cl = c.size();
for(int i = 1; i <= al; i++) as[i] = a[al - i] - '0';
for(int i = 1; i <= bl; i++) bs[i] = b[bl - i] - '0';
for(int i = 1; i <= cl; i++)
{
if(as[i] < bs[i])
{
as[i] += 10;
as[i + 1]--;
}
cs[i] = as[i] - bs[i];
}
while(cl > 1 && cs[cl] == 0) cl--;
for(int i = cl; i >= 1; i--) c += cs[i] + '0';
cout << c;
return 0;
}
全部评论 1
请检查
int al = a.size(),bl = b.size(),cl = c.size();
这行的
cl = c.size()
是否出错
2024-09-17 来自 上海
0
有帮助,赞一个