自己测试的都对,为什么提交就是WA?

P1009 [NOIP1998 普及组] 阶乘之和

打表王朱智霖 @ 2024-09-21 22:38:39

#include<iostream>
using namespace std;
int with(int a)
{
    int sum;
    sum=1;
    for (int i=1;i<=a;i++)
    {
        sum*=i;
    }
    return sum;
}
int main()
{
    int n,num;
    cin>>n;
    for (int i=1;i<=n;i++)
    {
        num+=with(i);
    }
    cout<<num;
    return 0;
}

测试都是对的,能到50,就是全WA


by theblacksilence @ 2024-09-21 22:44:21

这题要高精


by HUTEHE @ 2024-09-21 22:45:28

@打表王朱智霖 也可以打表


by _N00B_ @ 2024-09-21 23:03:43

我在本地用我的AC代码跑的数据:

//输入
50
//输出
31035053229546199656252032972759319953190362094566672920420940313

你的代码在我本地运行的结果:

//输入
50
//输出
-125961703

很难想象这道题不用高精是怎么过的

就是做这道题时我才偶然发现乘法高精和加法高精差不多的好写(


by 打表王朱智霖 @ 2024-09-23 22:12:49

明白了


|