洛谷 - P2657 - [SCOI2009]windy数 - 数位dp

https://www.luogu.org/problemnew/show/P2657

不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。

这道题是个显然到不能再显然的数位dp了。

来个最神奇的dp[i][j]表示i位数,开头为j的windy数的个数吧。

那么dp[i][j]的求法是很显然的,写个sum数组求和更为方便。

那么怎么统计windy数呢?

约定由布丁酱写的数位dp,求闭区间[l,r]时,使用count(r)-count(l-1),也就是count(x)表示不小于的[0,x]中windy数的个数。

怎么求count?这时候还是要设计一个dfs来递归表示这个过程。

猜你喜欢

转载自www.cnblogs.com/Yinku/p/10319919.html