Почему нарушение прав доступа не появляется во время выполнения при вычислении факториала 100007?
#include<stdio.h>
#include<math.h>
long fact_value[100001] ;
long fact(long n);
int main() {
fact_value[0] = 1;
fact_value[1] = 1;
int T;
int num;
scanf("%d",&T);
for(int i=0;i<T;i++) {
scanf("%d",&num);
printf("%ld\n",fact(num));
}
return 0;
}
long fact(long n) {
if(fact_value[n]!=0)
return fact_value[n];
return fact_value[n] = (n*fact(n-1))%1000000007;
}
Эта программа представляет собой динамический подход к решению факториала чисел с рекурсией