CF-11D.A Simple Task【思维+状压dp】

这篇博客介绍了如何解决CF-11D问题,使用了思维结合动态规划(状压DP)的方法。通过定义dp[i][j]表示到达状态i且当前位置为j的方案数,注意到避免重复计算,限制了状态起点。转移过程中,区分合法与不合法状态,考虑是否形成环并更新答案。最后,由于环的方向不敏感,答案需要除以2。
摘要由CSDN通过智能技术生成

思路
d p [ i ] [ j ] : dp[i][j]: dp[i][j]:表示状态为 i i i 1 1 1表示已走到这个点, 0 0 0表示未走到这个点,此时站在 j j j点上的所有方案数。
发现我们在计算的时候可能会出现重复的情况,例如在计算 1 , 2 , 3 1,2,3 1,2,3这个环时先按照顺序计算了 1 , 2 , 3 1,2,3 1,2,3,又计算了 2 , 3 , 1 2,3,1 2,3,1,这样可以发现是重复的情况。所以需要dp的限制就变成了:状态为 i i i,此时站在点 j j j上,且这种状态的起点为状态 i i i中的第一个为1的值。
接下来考虑转移,先考虑不合法的状态, 假设但前点在 j j j,接下来要走的点为 k k k,状态 i i

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值