题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=4352
题目意思:
求区间L到R之间的数A满足A的的数位的最长递增序列的长度为K的数的个数。
解题思路:
数位dp+LIS+状态压缩
根据求LIS的nlogn的思想,由于k最多为10,也就是最长递增序列的长度最多为10,可以状态压缩10位,维护前面的已选的递增序列,并及时更新。
dp[i][j][k]表示后面还有i位,前面状态为k,总共需要最长递增序列为j时的总数。
代码:
更新时用两种方式实现都可以。