随笔分类 - 数位dp
摘要:T1 luogu 5070 题目大意: 现在给你一个长度为$n$的序列,有$m$次询问 每次询问一个区间$[l,r]$排序去重后的序列中长度为1到10的条件的区间个数 满足条件的区间满足每项是前一项数+1的极长区间 思路: 发现每个数$x$只对$[x-10,x+10]$这个区间有影响 直接莫队维护一
阅读全文
摘要:题目大意: 求$[L,R]$中,满足不同时存在4和8且有连续三个一样的个数 思路: 我为什么要记忆化搜索里带-1啊 我可真是个** 直接记忆化搜索记前两位是否有4,8以及是否满足连续 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring
阅读全文
摘要:(貌似是远古大坑了 T1 bzoj 4737 组合数问题 题目大意: 给定 $n,m$ 求有多少个$C_n^m$整除$k$ $(n,m \le 10^{18})$ 思路: 考虑如何计算组合数 使用lucas只有在lucas递归过程中n<m才会产生0 因此我们考虑把$n,m$按照k进制分解 只要中间某
阅读全文
摘要:题目大意: 设 sum(i)表示i的二进制表示中1的个数 给出一个正整数N,求是sum(1)—sum(N)的乘积 思路: 可以想到对sum的值求有多少个 然后快速幂 枚举sum的值 使用数位dp 每遇到一位1 则可以求出小于这位1所有的对于这个sum的组合数 1 #include<iostream>
阅读全文
摘要:题目大意: 给定两个正整数a和b,求在[a,b]中的所有整数中,每个数码(digit)各出现了多少次 思路: 不知道黄学长他们的dp都是怎么dp的 搞神的方法太强啦 %%% 数位乱搞。。 推了公式,然后每一位直接套用公式 每一位分3种情况 小于该位数字的直接+10的位数次方 等于的+10的位数减一次
阅读全文
摘要:题目大意: 定义一种windy数:不含前导零且相邻两个数字之差至少为2的正整数被称为windy数 求在A和B之间,包括A和B,总共有多少个windy数 思路: 一眼数位dp 具体见注释 1 #include<iostream> 2 #include<cstdio> 3 #include<algori
阅读全文

浙公网安备 33010602011771号