求大佬帮忙看看这个逻辑 为什么超过5000之后错

P1147 连续自然数和

```c #include<stdio.h> int main() { int a[20000]; int x; scanf("%d",&x); int sum=0; for(int i=0;i<x;i++) { a[i]=i; } int k; int m=1; for(int i=0;i<x;i++) { sum=a[i]+sum; if(sum==x) { k=i; sum=0; printf("%d ",m); printf("%d",k); printf("\n"); } if(sum>x) { sum=0; m=i+1; } } return 0; } ```
by swaggywang @ 2019-02-27 11:16:04


你用longlong岂不是更好。。 int最大只能65536,我记得有几组测试点都几百万了。。
by _KaQqi @ 2019-03-17 15:54:24


@[_KaQqi](/space/show?uid=68055) $int$范围有这么小吗?
by 犇犇dodo @ 2019-03-27 12:01:38


@[犇犇dodo](/space/show?uid=119969) 是的
by _KaQqi @ 2019-03-27 19:40:28


@[犇犇dodo](/space/show?uid=119969) 额我记错了QwQ,是2147483648
by _KaQqi @ 2019-03-27 20:27:36


@[_KaQqi](/space/show?uid=68055) 2147483647(精准)(手动滑稽)
by wangty @ 2019-08-11 14:58:12


@[wangty](/space/show?uid=42651) 是-2147483648到2147483647精准
by Mingxuan @ 2019-09-10 22:18:19


|