jiangmuran @ 2023-06-12 14:19:11
RT,第五个点死活过不去
https://www.luogu.com.cn/record/112580517
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int a[2005]={},b[2005]={},c[2005]={};
string sa,sb;
cin >> sa >> sb;
for (int i=sa.length()-1,j=0;i>=0,j<=sa.length()-1;i--,j++)
{
a[j]=sa[i]-'0';
}
for (int i=sb.length()-1,j=0;i>=0,j<=sb.length()-1;i--,j++)
{
b[j]=sb[i]-'0';
}
int len=sa.length()+sb.length();
for (int i=0;i<sa.length();i++)
{
for (int j=0;j<sb.length();j++)
{
c[i+j]+=a[i]*b[j];
}
}
for (int i=0;i<len;i++)
{
c[i+1]=c[i]/10+c[i+1];
c[i]=c[i]%10;
}
for (;!c[len];)
{
len--;
}
len++;
if(len <= 0)
{
len=1;
}
for (int i=len-1;i>=0;i--)
{
cout << c[i];
}
}
by MuRongzhang @ 2023-06-12 14:47:37
根据上面的代码,
by jiangmuran @ 2023-06-12 15:13:08
@MuRongzhang 能具体讲一下吗,谢谢 本人小学蒟蒻,刚刚偷偷来刷题 没听懂、、、
by MuRongzhang @ 2023-06-12 16:25:45
@ben_ren_yi_tui_gu 刚才的没看懂也没关系,因为我看了一下问题,不是刚才想的那种。你可以试着把数组开到 main
函数外面(因为函数里面开数组初始化的时候里面的元素是多少谁都不知道)。
by jiangmuran @ 2023-06-12 17:52:12
@MuRongzhang我初始化了阿,我刚刚从新交了以下,第五个点成RE了
by jiangmuran @ 2023-06-12 19:31:35
@MuRongzhang 我的问题找到了,c数组开小了,至少开4005个
by MuRongzhang @ 2023-06-12 20:02:26
啊这……本人fw的事实暴露了()