社区讨论
求助!50pts
P1001A+B Problem参与者 4已保存回复 7
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @mhj37fpg
- 此快照首次捕获于
- 2025/11/03 19:59 4 个月前
- 此快照最后确认于
- 2025/11/03 19:59 4 个月前
CPP
#include <bits/stdc++.h>
using namespace std;
struct BigNum {
int num [ 1000 + 10 ];
int len;
} a, b;
BigNum operator + ( BigNum a, BigNum b )
{
BigNum res;
memset ( res.num, 0, sizeof ( res.num ) );
int len = max ( a.len, b.len );
for ( int i = 0; i < len; i ++ )
{
res.num [ i ] += a.num [ i ] + b.num [ i ];
if ( res.num [ i ] >= 10 )
{
res.num [ i + 1 ] = res.num [ i ] / 10;
res.num [ i ] %= 10;
}
}
if ( res.num [ len ] != 0 )
{
res.len = len + 1;
}
else
{
res.len = len;
}
return res;
}
BigNum str_to_bignum ( string s )
{
BigNum res;
memset ( res.num, 0, sizeof ( res.num ) );
res.len = s.size ( );
for ( int i = 0; i < res.len; i ++ )
{
res.num [ i ] = s [ res.len - i - 1 ] - '0';
}
return res;
}
void write ( BigNum a )
{
for ( int i = a.len - 1; i >= 0; i -- )
{
cout << a.num [ i ];
}
}
int main ()
{
ios::sync_with_stdio ( false );
cin.tie ( 0 );
string s1, s2;
cin >> s1 >> s2;
a = str_to_bignum ( s1 );
b = str_to_bignum ( s2 );
write ( a + b );
return 0;
}
这是代码
回复
共 7 条回复,欢迎继续交流。
正在加载回复...