
数位DP
zxyoi_dreamer
退役了退役了爬了爬了,搞个锤子算法竞赛,不如好好享受大学生活。
展开
-
【校内模拟】A(容斥原理)(数位DP)(范德蒙德恒等式)(高精度)
简要题意:请你对满足下列条件的正整数序列 A1,A2⋯AnA_1,A_2\cdots A_nA1,A2⋯An 进行计数。∀1≤i≤n,Li≤Ai≤Ri\forall 1\leq i\leq n,L_i\leq A_i\leq R_i∀1≤i≤n,Li≤Ai≤Ri令 S=∑i=1nAiS=\sum\limits_{i=1}^nA_iS=i=1∑nAi 给出 DDD 进制数字集...原创 2020-02-17 23:12:31 · 445 阅读 · 0 评论 -
【TJOI2019】甲苯先生的线段树(数位DP)
传送门扯淡:TJOI2019难一点的就只有这道D2T3了,前面五道我共计花了三个小时,这一道花了将近两个小时。五个小时AK两天TJOI不是梦但是说实话这道题并没有什么水平,没考察什么思维方面的东西,涉及到的性质也极其偏门,天津就靠这个来选拔省队?怕不是反向选拔,反正天津今年也一块金牌也没有,这个锅省选和省选出题人肯定背定了。然后我去题解区逛的时候还看到这居然是CF750G?而且还是没有什...原创 2019-10-09 21:18:43 · 346 阅读 · 0 评论 -
【CF 338D】Fox and Perfect Sets(线性基)(数位DP)
传送门题解:显然所有合法集合可以直接用线性基表示出来。考虑怎么唯一表示,显然是将线性基高斯消元搞成下三角矩阵。当这一位上有基的时候,不允许线性基中其他位置出现这一位上的111,否则上面的位置可以任意选择。从高位向低位数位dp,设状态f[i][j][0/1]f[i][j][0/1]f[i][j][0/1],表示处理了前iii个高位,线性基中已经有jjj个元素,当前的最大xor和是否卡kk...原创 2019-08-30 21:16:36 · 189 阅读 · 0 评论 -
【校内模拟】魅力(高维卷积)(循环卷积)(NTT)(三进制FWT)(数位DP)
题解:一不小心又吊了标算标算的三进制FWT用的是递归实现,复域用的是a+b3a+b\sqrt 3a+b3而不是a+bω3a+b\omega_3a+bω3,常数极大,跑了我用时的两倍不止首先推出数位DP的式子,有点麻烦不想写了。考虑题目的两个限制。第一个,集合中的数的出现次数必须是三的倍数,多维三进制循环卷积,好的三进制FWT。第二份,结果必须是kkk的倍数,kkk进制循环卷积,由于...原创 2019-08-29 20:29:03 · 636 阅读 · 0 评论 -
【51nod1569】二项式系数的个数(Kummer定理)(数位DP)
传送门题解:ppp很大,注意做高精度除法的时候爆int,我就WA了五次。首先我们考虑组合数(n+mm){n+m\choose m}(mn+m)中含有ppp的指数为多少。我们发现其实就是(n+m)!(n+m)!(n+m)!中的指数减去n!n!n!中的指数再减去m!m!m!中的指数。总指数怎么算?很显然地,a!a!a!中含有的ppp的指数为∑i=1∞⌊api⌋\sum\limits_{i...原创 2019-08-03 15:39:40 · 420 阅读 · 0 评论 -
2018.11.07【校内模拟】异或(数位DP)(数学期望)
传送门解析:蒟蒻考场上只想了随机情况下的期望,于是就拿了部分分滚粗了。。。其实最优情况下的期望我好像还推错了,最后学习了标解才会的。我好菜啊。。。希望今年NOIP不要打酱油就行了。思路:首先随机的情况其实非常好想。我们只需要考虑每个位出现111的概率就行了,其实就是统计每个位出现111的方案数就行了,这个随便乱搞一下都行,我是用的O(log2n)O(\log^2n)O(log2n)...原创 2018-11-07 19:14:09 · 253 阅读 · 0 评论 -
2018.10.31【校内模拟】几串字符(数位DP)(球盒问题)
传送门解析:这个数位DP是O(len)O(len)O(len)的。。。只需要预处理组合数就行了。。。思路:首先注意到几个性质。1.c0,1+1≥c1,0≥c0,1c_{0,1}+1≥c_{1,0}≥c_{0,1}c0,1+1≥c1,0≥c0,1这个很显然,因为1/01/01/0区间的出现是交替的。2.c1,0+c0,0c_{1,0}+c_{0,0}c1,0+c0,0是0出...原创 2018-11-01 16:02:22 · 149 阅读 · 0 评论 -
2018.10.25【NOIP练习】ZUA球困难综合征/记忆(线段树)(数位DP)(位运算骚操作)(按位贪心)
传送门(由于现在OJ上有两道重名的题,所以请先确认你要找的题解是不是这道题的)解析:这道题有两种做法,二元组维护信息+二进制数位DP,三元组维护信息+按位贪心。(其实二元组也可以按位贪心,三元组也可以数位DP。。。)好写的二元组需要卡常才能过,因为数位DP还是太慢了。。。解法1:二元组+数位DP我们在线段树节点维护一个二元组(v0,v1)(v_0,v_1)(v0,v1)表示每一位...原创 2018-10-25 16:22:13 · 488 阅读 · 0 评论 -
2018.10.15【BZOJ1833】【洛谷P2602】【ZJOI2010】数字计数(数位DP)
BZOJ传送门解析:感觉不是一个很好做的数位DP。思路:我其实是看了hzwerhzwerhzwer的题解才会这道题的非递归写法,结构体重载运算符大法好啊orzorzorz。定义数组f[i][j][k]f[i][j][k]f[i][j][k]表示位数为iii,最高位为jjj,有数字kkk的个数。其中最后一维kkk可以封装一个结构体,因为我们接下来要对它做很多次的整体加法。我们先预处理...原创 2018-10-15 08:44:05 · 161 阅读 · 0 评论 -
2018.09.29【HDU4507】恨7不成妻(数位DP)
传送门解析:我数组开小,越界访问到了其他不该访问的位置,但是由于没有访问非法内存,没有RERERE,于是我就WAWAWA了十多次。。。思路:这种维护高次方和的问题肯定要从低次转移过来。我们令f[i][addremain][numremain]f[i][addremain][numremain]f[i][addremain][numremain]表示之前高位的数字和modmodmod 7...原创 2018-09-29 14:42:47 · 200 阅读 · 2 评论 -
2018.09.29【HDU2089】不要62(数位DP)
传送门解析:今天突然发现自己还没写过数位DPDPDP入门题。。。思路:我们从高位向低位DP,采用记忆化搜索。初始化fff数组为−1-1−1,因为我们可能DPDPDP到某个状态是没有合法数的。然后就是简单DPDPDP一下就行了。代码:#include<bits/stdc++.h>using namespace std;#define ll long long#d...原创 2018-09-29 11:23:38 · 169 阅读 · 0 评论 -
2018.09.29【洛谷P2106】Sam数(数位DP)(矩阵快速幂)
传送门解析:其实这种只用位数转移的数位DPDPDP,大概都可以用矩阵快速幂推。本质原因是每层的转移方程与这是第几层无关,比如这道题。思路:可以发现一个很显然的情况,就是上面说的,这道题可以矩阵快速幂转移。不过还是要推一下普通状态转移式子才知道应该怎么构造矩阵。转移方程如下:dp[i+1][j]=∑x=max(j−2,0)min(0,j+2)dp[i][x]dp[i+1][j]=\sum...原创 2018-09-29 10:50:48 · 260 阅读 · 0 评论 -
2018.09.29【BZOJ1026】【洛谷P2657】【SCOI2009】windy数(数位DP)
BZOJ传送门洛谷传送门解析:由于数据范围很小(相对于大部分数位DPDPDP题来说)。我们只记录当前位,当前位数字,是否是前导0,是否达到上界。简单DP记忆化搜索一下就好了。代码:#include<bits/stdc++.h>using namespace std;#define ll long long#define re register#define g...原创 2018-09-29 09:46:34 · 212 阅读 · 0 评论 -
2018.09.29【NOIP训练】美丽数(数位DP)
描述美丽数是指能被它的每一位非0的数字整除的正整数。输入包含若干组数据,每组数据一行两个数n,m,表示求[n,m]之间的美丽数的个数。输出对于每组数据输出一个答案,各占一行。样例输入1 912 15样例输出92提示0 &amp;amp;lt; n , m &amp;amp;lt; 10^18 测试数据不超过100组解析:看到这道题很容易就想到状压加数位DP,这是常规做法,但是会T,我们先来看一下这...原创 2019-01-25 21:07:45 · 419 阅读 · 0 评论 -
2018.09.28【HDU5564】Clarke and digits(数位DP)(矩阵快速幂)
传送门解析:哦,这可怕的数据范围。但是仔细想一想,只限制了位数的话,能不能给我们什么特殊性质思路:首先要知道动态规划暴力 做法。设dp[i][j][k]dp[i][j][k]dp[i][j][k]表示处理到第iii位,前iii位%7余数是jjj,当前位是kkk的方案数,于是状态转移就是dp[i+1][(j∗10+x)mod&nbsp;7][x]+=dp[i][j][k],1≤k,x≤...原创 2018-09-28 16:45:35 · 217 阅读 · 0 评论