#include <stdio.h>
int c = 0;
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;
int result = rec(n);
printf("数列a%dの値は%d\n", n
, result
); printf("このときrecの呼び出し回数は%d\n", c
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmludCBjID0gMDsKCmludCByZWMoaW50IG4pIHsKICAgIGMrKzsKICAgIGlmIChuID09IDEpIHsKICAgICAgICByZXR1cm4gMTsKICAgIH0gZWxzZSBpZiAobiA9PSAyKSB7CiAgICAgICAgcmV0dXJuIDI7CiAgICB9IGVsc2UgewogICAgICAgIHJldHVybiAtNipyZWMobi0xKS05KnJlYyhuLTIpOwogICAgfQp9CgppbnQgbWFpbih2b2lkKSB7CiAgICBpbnQgbjsKICAgIHNjYW5mKCIlZCIsICZuKTsKICAgIGludCByZXN1bHQgPSByZWMobik7CiAgICBwcmludGYoIuaVsOWIl2ElZOOBruWApOOBryVkXG4iLCBuLCByZXN1bHQpOwogICAgcHJpbnRmKCLjgZPjga7jgajjgY1yZWPjga7lkbzjgbPlh7rjgZflm57mlbDjga8lZFxuIiwgYyk7CgogICAgcmV0dXJuIDA7Cn0K