Codeforces 954H Path Counting
题目大意:给你一棵n层的树,第i层的每个节点有 a [ i ] a[i] a[i]个儿子节点,然后问你树上的简单路径中长度在 1 n ∗ 2 − 2 1~n*2-2 1 n∗2−2之间的每个有多少条
因为直接计算过每个节点的路径并不好算
所以可以算一算从每个节点出发的路径的个数
f [ i ] [ j ] f[i][j] f[i][j]表示对于在i层的1个节点,向下走行走j步的方案数
g [ i ] [ j ] g[i][j] g[i][j]表示对于在i层的1个节点,第一步向上行走共走j步的方案数
然后DP式子比较显然
f [ i ] [ j ] = a [ i ] ∗ f [ i + 1 ] [ j − 1 ] f[i][j]=a[i]*f[i+1][j-1] f[i][j]=