#include <stdio.h>
// 練習問題D
int func(int n) {
if (n == 0) {
return -1; // 停止条件:a_0 = -1
}
return 3 * func(n - 1) + 5; // 再帰ステップ:a_n = 3 * a_{n-1} + 5
}
int main(void) {
int n = 3, m;
m = func(n);
printf("数列anについて、n=%dのときの値は%d\n", n
, m
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Ci8vIOe3tOe/kuWVj+mhjEQKaW50IGZ1bmMoaW50IG4pIHsKICAgIGlmIChuID09IDApIHsKICAgICAgICByZXR1cm4gLTE7IC8vIOWBnOatouadoeS7tu+8mmFfMCA9IC0xCiAgICB9CiAgICByZXR1cm4gMyAqIGZ1bmMobiAtIDEpICsgNTsgLy8g5YaN5biw44K544OG44OD44OX77yaYV9uID0gMyAqIGFfe24tMX0gKyA1Cn0KCmludCBtYWluKHZvaWQpIHsKICAgIGludCBuID0gMywgbTsKICAgIG0gPSBmdW5jKG4pOwogICAgcHJpbnRmKCLmlbDliJdhbuOBq+OBpOOBhOOBpuOAgW49JWTjga7jgajjgY3jga7lgKTjga8lZFxuIiwgbiwgbSk7CiAgICByZXR1cm4gMDsKfQ==