洛谷P2362 围栏木桩【DP-求LIS方案数】【橙】

博客详细介绍了洛谷P2362题目的解题思路,主要涉及动态规划问题,计算以每个元素结尾的最长非降序子序列的长度f[i]及其方案数g[i]。通过状态转移方程,最终找到最长非降序子序列的长度和方案数。文章提供了相应的C++代码实现。

Date:2022.01.10
题意:最长非降序子序列长度为t,能组成最长非降序子序列的方案数为c,求t和c。

思路:先确定两个状态:
f[i]f[i]f[i]:以第iii个元素结尾的最长非下降子序列的长度。
只有自身时一定是非降序,因此初始化f[i]=1f[i]=1f[i]=1
状态转移方程:f[i]=f[j]+1【j∈[0,i−1]∧a[i]>=a[j]】f[i]=f[j]+1【j\in[0,i-1] \wedge a[i]>=a[j]】f[i]=f[j]+1j[0,i1]a[i]>=a[j]
g[i]g[i]g[i]:以第iii个元素结尾且最长非下降子序列长度为f[i]f[i]f[i]的方案数。
初始f[i]=1f[i]=1f[i]=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值