摘要: https://www.luogu.com.cn/problem/P4124 题意:给区间[l, r], 求满足条件的手机号。条件:4,8不同时出现,有AAA数字出现,没有前导0。 分析:没有前导0,如果[1,x],x < 1e11, 直接return 0。 前缀差分,高位到低位,状态是前两位数字跟 阅读全文
posted @ 2024-01-15 22:09 _Yxc 阅读(26) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/P2657 题意:给定范围,求windy数个数。windy数是相邻数字差值至少为2的数。 分析:前缀和差分,数位dp,从高到低判。 这里记录前导0的意义在于,如果前面都是0,那么前面的这一位可以看做是-2,在当前的pos位可以选任何数 阅读全文
posted @ 2024-01-15 12:12 _Yxc 阅读(26) 评论(0) 推荐(0)
摘要: 题意:统计区间内每个数字出现的次数 分析:前缀和差分,数位dp,从高到低考虑,有一种特殊情况是统计0出现的次数时,要考虑前导0 void solve(){ long long l, r; cin >> l >> r; vector<int> num; int digit; vector<vector 阅读全文
posted @ 2024-01-15 10:52 _Yxc 阅读(28) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/P4999 题意:给定区间[l, r],求[l,r]内所有数字的每位dight相加的总和。 分析:数位dp,前缀和差分,从最高位往最低位考虑。 //更好的理解dp[pos][sum], 当考虑pos位的时候,pos位肯定有一个sum值 阅读全文
posted @ 2024-01-15 10:19 _Yxc 阅读(20) 评论(0) 推荐(0)