数位DP
数位DP是与数字相关的一类计数问题,再这类题目中,一般给定一些限制条件,求满足条件的第k小的数是多少;或者求区间[l,r]内有多少个满足限制的数,范围通常很大
一般这种问题先用动态规划进行预处理,然后进行拼凑的思想,用“试填法”求最终答案
数位DP,就是考虑数字的每一位,问题变成log
每一位作为不同的阶段,设计状态
从高往低进行枚举
至于为什么需要从高往低,因为对于每一位,如果确定了前面,就会为后面排除了一些情况
我们会经常采用记忆化搜索形式,高位答案由低位答案转移过来
说白了,这些动态规划,还是得做题,只有从题中才能明白其中的精髓
学OI的压力越来越大了,不拿金牌,不罢休