Run ID 作者 问题 语言 测评结果 时间 内存 代码长度 提交时间
79745 sh25_wangtaojie 合法的数列 C++ 编译错误 0 MS 0 KB 814 2026-01-04 14:40:55

Tests(0/0):


int countSequences(int k) { // 如果已经计算过,直接返回结果(记忆化优化) if (memo[k] != 0) { return memo[k]; } // 基础情况:仅包含k自身的数列,计数为1 int total = 1; // 遍历所有可以追加的数i(i ≤ k/2) for (int i = 1; i <= k / 2; ++i) { // 累加每个i对应的合法数列数 total += countSequences(i); } // 存储结果到记忆化数组,方便后续复用 memo[k] = total; return total; } int main() { int n; cin >> n; // 初始化记忆化数组,大小为n+1(下标对应数字1~n),初始值0 memo.resize(n + 1, 0); // 计算并输出结果 cout << countSequences(n) << endl; return 0; }


测评信息: