큰 피보나치 수의 모듈러스를 찾기 위해 다음 프로그램을 작성했습니다. 이것은 많은 수를 해결할 수 있지만 fibo_dynamic(509618737,4602,229176339)
과 같은 경우에는 계산하지 못합니다. 여기서 a = 509618737
, b = 4602
및 N = 229176339
입니다. 이 일을하도록 도와주세요.큰 숫자의 fibonacci 번호 찾기
long long fibo_dynamic(long long x,long long y,long long n, long long a[]){
if(a[n]!=-1){
return a[n];
}else{
if(n==0){
a[n]=x;
return x;
}else if(n==1){
a[n]=y;
return y;
}else {
a[n]=fibo_dynamic(x,y,n-1,a)+fibo_dynamic(x,y,n-2,a);
return a[n];
}
}
}
넘치는 지 확인하려면 'long long'의 용량 또는 범위를 확인하십시오. 컴파일러가 지원하는 경우'unsigned long long'을 사용하여 범위를 확장 할 수 있습니다. –
또한 컴파일러 또는 플랫폼의 스택 용량을 검토하십시오. 각 재귀는 스택에 데이터를 저장합니다. –
배열의 경계를 초과하지 않았는지 확인해야합니다. 비교할 수 있도록 배열의 용량을 전달해야합니다. –