#include <stdio.h>
int c = 0;
// a_n = -6a_(n-1) - 9a_(n-2), a1=1, a2=2
int rec(int n){
c++;
if (n == 1){
return 1;
}
else if (n == 2){
return 2;
}
else{
return -6 * rec(n - 1) - 9 * rec(n - 2);
}
}
int main(void){
int n = 5;
printf("数列a%dの値は%d\n", n
, rec
(n
)); printf("この時recの呼び出し回数は%d回",c
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmludCBjID0gMDsKCi8vIGFfbiA9IC02YV8obi0xKSAtIDlhXyhuLTIpLCBhMT0xLCBhMj0yCmludCByZWMoaW50IG4pewogICAgYysrOyAKCiAgICBpZiAobiA9PSAxKXsKICAgICAgICByZXR1cm4gMTsKICAgIH0KICAgIGVsc2UgaWYgKG4gPT0gMil7CiAgICAgICAgcmV0dXJuIDI7CiAgICB9CiAgICBlbHNlewogICAgICAgIHJldHVybiAtNiAqIHJlYyhuIC0gMSkgLSA5ICogcmVjKG4gLSAyKTsKICAgIH0KICAgIH0KaW50IG1haW4odm9pZCl7CiAgICAgaW50IG4gPSA1OwogICAgcHJpbnRmKCLmlbDliJdhJWTjga7lgKTjga8lZFxuIiwgbiwgcmVjKG4pKTsKICAgIHByaW50Zigi44GT44Gu5pmCcmVj44Gu5ZG844Gz5Ye644GX5Zue5pWw44GvJWTlm54iLGMpOwogICAgcmV0dXJuIDA7Cn0K