社区讨论

建议加强数据

P1303A*B Problem参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@lo27w04i
此快照首次捕获于
2023/10/23 09:26
2 年前
此快照最后确认于
2023/11/03 09:41
2 年前
查看原帖
我的代码
CPP
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
string sa, sb;
long long a[2100], b[2100], c[4200];
int main ()
{
	cin >> sa >> sb;
	long long j = 1;
	for(long long i = sa.length() - 1; i >= 0; i--)
	{
		a[j] = sa[i] - '0';
		j++;
	}
	j = 1;
	for(long long i = sb.length() - 1; i >= 0; i--)
	{
		b[j] = sb[i] - '0';
		j++;
	}
	if(a[1] == 0 || b[1] == 0) 
	{
		cout << 0;
		return 0;	
	} 
	long long alen = sa.length(), blen = sb.length();
	long long len = alen + blen;
	for(long long i = 1; i <= alen; i++)
	{
		for(long long j = 1; j <= blen; j++)
		{
			c[i + j - 1] += a[i] * b[j];
		}
	}
	for(long long i = 1; i <= len; i++)
	{
		c[i + 1] += c[i] / 10;
		c[i] %= 10;
	}
	while(c[len] == 0)
	{
		len--;
	}
	for(long long i = max((long long)1, len); i >= 1; i--) cout << c[i];
	return 0;
}
提交: 100
但是
50 * 49

算出来是0

顺便求大佬帮我调一调

回复

3 条回复,欢迎继续交流。

正在加载回复...