#include <stdio.h>
int count = 0;
int rec(int n) {
count++;
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;
int ans = rec(n);
printf("数列aの第%d項の値は%d\n", n
, ans
); printf("このときrecの呼び出し回数は%d回です。\n", count
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmludCBjb3VudCA9IDA7CmludCByZWMoaW50IG4pIHsKICAgIGNvdW50Kys7ICAKCiAgICBpZiAobiA9PSAxKXsKICAgICAgICAgIHJldHVybiAxOwogICAgfQogICAgZWxzZSBpZiAobiA9PSAyKXsKICAgICAgICAgIHJldHVybiAyOwogICAgfQogICAgZWxzZSByZXR1cm4gLTYqIHJlYyhuIC0gMSkgLTkqcmVjKG4gLSAyKTsKfQoKaW50IG1haW4odm9pZCkgewogICAgaW50IG47CiAgICBwcmludGYoIm7jga7lgKTjgpLlhaXlipvjgZfjgabjgY/jgaDjgZXjgYQ6ICIpOwogICAgc2NhbmYoIiVkIiwgJm4pOwoKICAgIGludCBhbnMgPSByZWMobik7CiAgICBwcmludGYoIuaVsOWIl2Hjga7nrKwlZOmgheOBruWApOOBryVkXG4iLCBuLCBhbnMpOwogICAgcHJpbnRmKCLjgZPjga7jgajjgY1yZWPjga7lkbzjgbPlh7rjgZflm57mlbDjga8lZOWbnuOBp+OBmeOAglxuIiwgY291bnQpOwoKICAgIHJldHVybiAwOwp9