>>688
改良しました。
//compile as C++
int fibo(int n){
static int *fibonatti_seq_table=NULL;
static int already_done=1;
if( (n<0) || (n>46) )return -1;
if(n<=1)return 1;
if(n<=already_done)return fibonatti_seq_table[n];
if(fibonatti_seq_table==NULL){
fibonatti_seq_table=new int[47];
for(int i=2;i<=46;i++){
fibonatti_seq_table[i]=fibo(i-1)+fibo(i-2);
already_done=i;
}
}
return fibo(n);
}