这道题要求我们计算区间[l,r]中有多少个整数是蛇形数,其中蛇形数定义为每一位数字都大于等于它右边的数字。
由于范围非常大(l,r≤1018) ,不能暴力枚举每个数字。这类题目可以使用数位DP(数字动态规划)来解决。
count(n)计算1到n范围内蛇形数的个数定义一个整数是蛇形数,当且仅当它的每一位都大于等于它的右边一位。例如,8,31和220是蛇形数,但35和202 不是。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册