为什么我全错了

P1249 最大乘积

#include <stdio.h> int main() { int n; scanf("%d",&n); int now = 0; int count = 1; int last = 0; int normal = 0; for(int i = 2;i < n;i++) { now = now + i; if(now > n) { normal = i - 1; last = n-now+i+i-1; break; } } for(int i = 2;i < normal;i++) { count = count * i; printf("%d ",i); } printf("%d\n",last); count = count*last; printf("%d",count); return 0; }
by _KaQqi @ 2019-03-09 11:47:35


``` #include <stdio.h> int main() { int n; scanf("%d",&n); int now = 0; int count = 1; int last = 0; int normal = 0; for(int i = 2;i < n;i++) { now = now + i; if(now > n) { normal = i - 1; last = n-now+i+i-1; break; } } for(int i = 2;i < normal;i++) { count = count * i; printf("%d ",i); } printf("%d\n",last); count = count*last; printf("%d",count); return 0; } ```
by _KaQqi @ 2019-03-09 11:48:23


可能只是过了样例,数据稍微奇怪一点就卡不过去了
by ViXpop @ 2019-03-09 12:14:23


因为您巨啊
by 洛天依_ @ 2019-03-09 12:16:22


@[_KaQqi](/user/68055) 你30的测试答案不对,你程序出来是7200,还可以更大234678得到8064
by sloth612 @ 2020-04-16 13:17:03


|