为什么数字大于36的时候就没有运行结果了

img

img


为什么数字大于36的时候就没有运行结果了,小于=等于36的数字都可以正确运行

k=j*initial[i] 这一步k可能会大于1000,导致后面的initial[k] 越界。
j最大j=n,i最大i=n-2
输入36其实已经越界了,可能不满足if判断没有被计算。

按照你的代码,数组元素被赋值成0了,而if(initial[i])需要initial[i]的值大于0条件才算满足。为0的无输出。