1. 程式人生 > 其它 >求序列數量

求序列數量

技術標籤:天梯賽

設序列L由{l1,l2,l3,⋯,li,⋯}(li≥0,i≥3)構成,其中,l1為整數M, l2≤l1,從l3開始li<∣li−2​ −li−1​​ ∣(i≥3)。 M=4時,有7個序列

在這裡插入圖片描述

輸入格式:
輸入一個序列中的第一個正整數M(M≤1000)。

輸出格式:
輸出滿足條件的序列的個數的後四位,即個數對10000取模。

輸入樣例:
在這裡給出一組輸入。例如:

5

輸出樣例:
在這裡給出相應的輸出。例如:

14
#include<bits/stdc++.h>
typedef long long LL;
using namespace std;
const int MOD =
10000; int mem[1001][1000]; int dfs(int pre, int cur) { if (cur <= 0) return 0; if (mem[pre][cur] != 0) return mem[pre][cur]; return mem[pre][cur] = (1 + dfs(pre, cur - 1) + dfs(cur, abs(pre - cur) - 1)) % MOD; } int main() { int N; cin >> N; cout << dfs(N, N) <<
endl; return 0; }