原问题:
解题思路:动态规划
void solve() {
ll i, j, k, p, q, r, t,u,v;
double a1, a2 = 0;
NN = 30;
double a, b, c;
v = 0;
ans1 = 0;
Ma4[0][0][0] = 1;
for (i = 1; i <= NN; i++) {
Ma4[i][0][0] += Ma4[i - 1][0][0];
Ma4[i][0][0] += Ma4[i - 1][1][0];
Ma4[i][0][0] += Ma4[i - 1][2][0];
Ma4[i][0][1] += Ma4[i - 1][0][0];
Ma4[i][0][1] += Ma4[i - 1][1][0];
Ma4[i][0][1] += Ma4[i - 1][2][0];
Ma4[i][0][1] += Ma4[i - 1][0][1];
Ma4[i][0][1] += Ma4[i - 1][1][1];
Ma4[i][0][1] += Ma4[i - 1][2][1];
Ma4[i][1][0] += Ma4[i - 1][0][0];
Ma4[i][1][1] += Ma4[i - 1][0][1];
Ma4[i][2][0] += Ma4[i - 1][1][0];
Ma4[i][2][1] += Ma4[i - 1][1][1];
}
for (i = 0; i <= 3; i++) {
for (j = 0; j <= 1; j++) {
ans1 = ans1 + Ma4[NN][i][j];
}
}
printf("%lld\n", ans1);
}