E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
----计数dp
计数dp
小结
序:除了刚开始的看了几道题的题解,后来也自己肛出了几道剩下不可做的题不也没做吗这些题目最大的特点是在于需要自己构造状态,这往往会成为一道题的最大卡点穷举表示水不到几分题目选讲:E:如果直接模拟,复杂度为k∗n2既然每一步只能往上下或往左右走,那么我们可以把题目分解为在x轴上行走k步与在y轴上行走k步的方案数都处理出来k∗n然后枚举往左右走i步,往上下走k-i步,然后再用组合处理(常规套路)#inc
NOI_yzk
·
2020-08-10 14:50
日常总结
hdu5550(
计数DP
+前缀和)
题意:每层楼有ai个人打羽毛球,有bi个人游泳,每层楼只能建造一个羽毛球场或者游泳馆,如果当前楼层没有羽毛求场,这ai个人就要到最近有羽毛球场的楼层打羽毛球,每个人产生的代价为楼层差,游泳的类似,求最小代价这个貌似并没有用到什么很特殊的技巧可是就是莫名地难想。。不造为什么。。首先由于楼层上下的情况都会对当前楼层产生影响,所以不能一层一层地往上考虑。。那就只能一段一段考虑了。。对一段区间[l,r],
qkoqhh
·
2020-08-10 12:18
DP
组合数学
问题 G: 小y的圈路
知识点:DP具体点就是
计数DP
线性DP和其他DP问题G:小y的圈路时间限制:1Sec内存限制:128MB[提交][状态]题目描述写完作业,无聊的小Y开始研究圈路有一个n×n的由非负整数组成方阵。
King__Zhang
·
2020-08-10 08:43
DP
CF474D Flowers (
计数dp
)
原题地址:https://codeforces.com/problemset/problem/474/D题意:有两种花可以吃,white花只能连续吃k个,red花不受限制,当吃a到b朵花时一共有多少种吃法?思路:dp定义状态见代码.设当前最后的花是红花,那么它前面的无论是红花还是白花都是合法的.若当前最后的花是白花,那么它前面必须是k−1k-1k−1个百花,所有状态是由i−ki-ki−k转移得来.
yiqzq
·
2020-08-09 16:30
CF_基础
[NOI2013]树的计数
计数Dp
[NOI2013]树的计数题目传送门分析强烈吐槽一下这道题不采用取模的方式,害我被卡精度卡了半天。因为毕竟是是自己yy的一种垃圾做法手玩几组数据~~(或者左转看看题解)~~发现按层划分BFS序很科学。然后就可以发现一个结论:一种合法的BFS序的划分对应一棵树。证明:考虑递归构造对应关系。对于某个BFS序,如果我们已经构造出了iii层以内的树,考虑第i+1i+1i+1层,因为已经划分好了,所以这一层
lvzelong2014
·
2020-08-08 17:39
动态规划-计数DP
[WC2019] 数树 容斥原理+矩阵树定理+树形Dp+
计数Dp
+生成函数优化Dp+多项式求Exp
[WC2019]数树题目传送门分析最近老是在肝一些神仙生成函数题。。。哎,肝败吓疯。其实luogu题解里面的那篇已经很详细了,这篇题解纯属个人整理,建议是到到luogu题解去看。题目大意:告诉你有俩棵有标号无根树,如果某两个节点共用了某条边,那么这两个点的权值必须相同,点权范围在[1,y][1,y][1,y]内,有三个任务,求在给定2,1,0棵树的情况下构造树和点权的方案数。Task0:简单转化如
lvzelong2014
·
2020-08-08 17:38
动态规划-计数DP
数学相关-生成函数
数学相关-FFT与NTT
数学相关-容斥原理
动态规划-树形DP
动态规划-结合
图论-矩阵树定理
AT693 文字列 (计数 dp)
Solution
计数dp
,先找出所有freqi>0freq_i>0freqi>0的小写字母,一个个插入字符串中。因为答案与插入顺序无关,所以我们
ylxmf2005
·
2020-08-04 17:07
CSPS 2019 Day2 T1 Emiya 家今天的饭(容斥 + 计数 dp)
Solution容斥+
计数dp
。ans=ans=ans=全部的方案数−-−超过⌊k2⌋\lfloor\frac{k}{2}\rfloor⌊2k⌋的方案数。
ylxmf2005
·
2020-08-04 17:06
计数
dp
bzoj5369: [Pkusc2018]最大前缀和 状压Dp
计数Dp
bzoj5369:[Pkusc2018]最大前缀和Description小C是一个算法竞赛爱好者,有一天小C遇到了一个非常难的问题:求一个序列的最大子段和。但是小C并不会做这个题,于是小C决定把序列随机打乱,然后取序列的最大前缀和作为答案。小C是一个非常有自知之明的人,他知道自己的算法完全不对,所以并不关心正确率,他只关心求出的解的期望值,现在请你帮他解决这个问题,由于答案可能非常复杂,所以你只需
lvzelong2014
·
2020-08-04 15:51
动态规划-计数DP
动态规划-状压DP
蓝书(算法竞赛进阶指南)刷题记录——CH3602 & 洛谷4778 Counting Swaps(
计数DP
)
题目:CH3602/luogu4778.题目大意:给定一个长度为nnn的排列,询问有多少种方法可以在交换次数最少的情况下把原序列变成递增序列.1≤n≤1051\leqn\leq10^51≤n≤105.我们发现最后序列一定是1,2,...,n1,2,...,n1,2,...,n,那么考虑把每个位置上的数向它最后应该在的位置连一条边,那么我们会得到一张图.很明显每次可以把两条边的起始点交换,且目标为把
hezlik
·
2020-08-04 14:06
【Gym - 102428F】Fabricating Sculptures (单峰
计数dp
)
题意输入n,mn,mn,m,求底座长度为nnn,方块个数为mmm的不会发生积水的雕像的个数,答案模109+710^9+7109+7。(n,m≤5000n,m\le5000n,m≤5000)n=3,m=6n=3,m=6n=3,m=6,左边为合法的方案,右边不合法。题解可以转化为要求方块要单峰。通过这一题发现,单峰的计数问题可以从高度的层面入手考虑。因为每一层的方块个数是单调的,而且一定在上一层放置的
sinsincos
·
2020-07-16 03:03
动态规划
动态规划
题解
NOIP2017 国庆郑州集训知识梳理汇总
成绩:题目成绩评价T150一般T210大失所望T30差基础算法递推:指通过观察、归纳,发现较大规模问题和较小规模问题之间的关系,用一些数学公式表达出来,在一些教材中,也称为
计数DP
。
_Tham
·
2020-07-08 08:05
NOI
竞赛辅导
[BZOJ4574][Zjoi2016]线段树(DP)
P3352BZOJ4574UOJ#196LOJ#2093Solution原本是一个期望DP,但是由于乘上了(n×(n+1)2)q(\frac{n\times(n+1)}2)^q(2n×(n+1))q,变成了
计数
xyz32768
·
2020-07-06 09:40
BZOJ
UOJ
LOJ
NOIP2017 国庆郑州集训知识梳理汇总
第一天基础算法及数学基本算法递推、递归、分治二分、倍增贪心递推指通过观察、归纳,发现较大规模问题和较小规模问题之间的关系,用一些数学公式表达出来在一些题解中,和“
计数DP
”是指同一个概念看例题例1用1*
tham_
·
2020-06-26 18:33
Algorithm
BZOJ 4559: [JLoi2016]成绩比较【
计数dp
,容斥,组合数
听说王队长的题解特别妙【摔好吧的确挺♂妙先yy出求每个人相对排名不同的方案数(用f来记录)因为是有顺序的……所以不能直接容斥……就用f[i]表示有刚好i个人被碾压的方案数,再用至少i个人被碾压的方案数减掉不合法的看代码吧,还是挺好懂的,或者前两篇题解也写的很稳【王队长的题解啊exciting然后求在每种排名下分数不同的方案数……自己yy一下C一C……xjb搞就完啦【真的不是忙着回家懒得码字了【滑稽
Flaze_
·
2020-06-21 20:25
OI
BZOJ
计数dp
组合数学
容斥
How many ways?? 矩阵
可以写一个
计数DP
来解决。估计看一眼代码就可以明白了。
An_Fly
·
2020-05-17 22:00
[CQOI2011] 放棋子 -
计数dp
在一个\(m\)行\(n\)列的棋盘里放一些彩色的棋子,使得每个格子最多放一个棋子,且不同颜色的棋子不能在同一行或者同一列,有多少种方法?Solution设\(f[i][j][k]\)表示用前\(k\)种颜色的棋子,占领了\(i\)行\(j\)列的方案数设\(g[i][j][k]\)表示用任意\(k\)个同色棋子占领\(i\)行\(j\)列的方案数,则考虑总方案数-实际上有没有被占领的行或列的方案
Mollnn
·
2020-04-06 19:00
结论总结
P3449组合
计数dp
,我们应该考虑的是能用的大致特征,比如有多少行多少列,而不应该过多的考虑特别具体的状态P3158树的所有直径具有相同的中点P3304如何查看一个点是否在一条路径上呢?
言似缥缈
·
2020-02-29 15:00
小球与盒子的故事
小球和盒子是非常经典(烂大街)的一种模型,以小球和盒子的爱恨情仇为背景,对把小球放到这个盒子里还是那个盒子里进行的一系列哲学问题探讨以及珂学形态分析,其中基本会涉及到组合数学(雾)和
计数DP
(雾)。
R-Q-R-Q
·
2020-01-14 07:00
11 .3 数位dp
数位dp是以数位上的关系为转移关系而进行的一种
计数dp
,题目基本类型是给定区间[l,r],求l到r之间满足要求的数字的个数.dp状态的转移方式通常是用递归+记忆化搜索,转移顺序一般是由高数位转移到底数位
易如鱼
·
2019-11-03 16:00
hdu-6415
计数DP
NashEquilibriumisanimportantconceptingametheory.RikkaandYutaareplayingasimplematrixgame.Atthebeginningofthegame,Rikkashowsann×mintegermatrixA.AndthenYutaneedstochooseanintegerin[1,n],Rikkaneedstochoos
Caution_X
·
2019-10-26 23:00
【题解】HDU4689 Derangement(有技巧的
计数DP
)
【题解】HDU4689Derangement(有技巧的
计数DP
)传送门呵呵没告诉我多测组数,然后\(n\le20,7000\mathrm{ms}\)我写了个状压上去T了题目大意:要你求错排的方案数,但要求
谁是鸽王
·
2019-10-26 15:00
Educational Codeforces Round 46 (Rated for Div. 2) D - Yet Another Problem On a Subsequence(
计数dp
)
题目给定n(1usingnamespacestd;constintN=1e3+10;constintmod=998244353;//dp[i]以i开头的方案数intn,a[N],c[N][N],dp[N];intsum;intmain(){scanf("%d",&n);for(inti=0;i=1;--i){if(a[i]<=0)continue;for(intj=i+a[i]+1;j<=n+1;
Code92007
·
2019-07-07 14:00
线性dp/计数dp
[dp]第十届蓝桥杯国赛CB组C
计数dp
傻逼题场上死活跑不出来结果,一进循环素数表就变零,从头调到尾无fuck说,八字不合答案:55965365465060/*Zeolim-AnACadaykeepsthebugaway*///#pragmaGCCoptimize
Zeolim
·
2019-05-26 13:40
搜索
[Dynamic
Flipping Game ZOJ - 4114 19SD省赛B题(
计数DP
)
LittleSublovesplayingthegameFlipMePlease.Inthegame,lights,numberedfrom1to,areconnectedseparatelytoswitches.Thelightsmaybeeitheronoroffinitially,andpressingthe-thswitchwillchangethe-thlighttoitsopposit
Galaxy_5688
·
2019-05-13 22:40
补题
fzu2129 子序列个数(
计数dp
)
题目给n(n#include#include#includeusingnamespacestd;typedeflonglongll;constintmod=1e9+7;constintmaxn=1e6+10;intn,v;intlast[maxn];//last[v]表示v这个值上一次出现的位置intdp[maxn];//dp[i]表示到[1,i]所有本质不同子序列的个数intmain(){whi
Code92007
·
2019-05-04 15:10
线性dp/计数dp
fzu2129 子序列个数(
计数dp
)
题目给n(n#include#include#includeusingnamespacestd;typedeflonglongll;constintmod=1e9+7;constintmaxn=1e6+10;intn,v;intlast[maxn];//last[v]表示v这个值上一次出现的位置intdp[maxn];//dp[i]表示到[1,i]所有本质不同子序列的个数intmain(){whi
Code92007
·
2019-05-04 15:10
线性dp/计数dp
atcoder题目合集(持续更新中)
ChoosingPoints数学IntegersonaTree构造LeftmostBall
计数dp
+组合数学PaintingGraphswithAtCoDeertarjan+polyaBuildingCubeswithAtCoDeer
SC.ldxcaicai
·
2018-12-05 11:46
#
题解
2018.10.25 uestc上天的卿学姐(
计数dp
)
传送门看了DZYODZYODZYO的题解之后发现自己又sbsbsb了啊。直接dpdpdp是O(2d)O(2^d)O(2d)更新,O(1)O(1)O(1)查询或者O(1)O(1)O(1)更新,O(2n)O(2^n)O(2n)查询的。然后我就不会了233.显然可以利用分块暴力的思想。每次枚举前半段来计算当前答案,然后枚举后半段来更新dpdpdp数组。这样效率O(n∗2d2)O(n*2^{\fracd2
SC.ldxcaicai
·
2018-10-25 10:05
#
分块
#
dp
计数DP
Dp不仅对于求解最优解问题有效,还可以用来求解各种排列组合的个数、概率或者期望之类的计算。一、划分数:有n个毫无区别的物品,将它们划分成不超过m组,求划分方法数模M的余数。例如有4个物品,将它们分成3组,则有4种情况:1+1+2,1+3,2+2,4。这样的划分叫做n的m划分。定义如下:d[i][j]=j的i划分总数我们可以思考根据这一定义可以得到那些递推关系。对于j的i划分的所有数值ai:1.如果
ChenKunn
·
2018-10-24 16:11
计数Dp
有关一类容斥
计数dp
问题
一类
计数dp
问题最近才接触到了一些dp最后容斥的题目,还经常和状压,概率期望啥的一起搞事情。由于之前基本没做过类似的题目,就被虐飞了,所以就做了一些题目。。
Rayment_cc
·
2018-10-06 15:03
=====动态规划=====
学习笔记
=====数学=====
codeforces 474D flowers 普通
计数dp
WesawthelittlegameMarmotmadeforMole’slunch.Nowit’sMarmot’sdinnertimeand,asweallknow,Marmoteatsflowers.Ateverydinnerheeatssomeredandwhiteflowers.Thereforeadinnercanberepresentedasasequenceofseveralflow
黑码
·
2017-04-30 11:24
dp
bzoj4011 落忆枫音 递推
计数dp
(递推)裸题(跟zj的题真心不能比啊)。。。 假设没有那个加边。
lych_cys
·
2016-05-02 22:00
动态规划
拓扑排序
递推
计数dp
51Nod 1202 子序列个数(简单
计数dp
)
1202 子序列个数题目来源: 福州大学 OJ基准时间限制:1 秒空间限制:131072 KB分值: 40 难度:4级算法题 收藏 关注子序列的定义:对于一个序列a=a[1],a[2],......a[n]。则非空序列a'=a[p1],a[p2]......a[pm]为a的一个子序列,其中1 #include #include usingnamespacestd; #definemaxn10001
zwj1452267376
·
2016-05-02 20:00
【BZOJ3622】已经没有什么好害怕的了【
计数DP
】【姿势】
【题目链接】【dyllalala的题解】说下我个人的理解...先把两个数组排序,设next[i]表示满足第i个糖果>第j个药片的最大的j。显然这个next是单调的,可以O(n)求出。设dp[i][j]表示前i个糖果里,至少有j组糖果>药片(即这j组以外的其他情况都不考虑)的方案数。考虑第i个糖果,有两种转移:(1)不管,dp[i][j]=dp[i-1][j](2)组成一组关系,dp[i][j]=d
BraketBN
·
2016-04-23 08:00
[CodeForces 118D] Caesar's Legions (
计数DP
)
个骑兵排成一列其中不能有连续的K1个骑兵,连续的K2个步兵问有多少种排列方式这题计数的我刚开始想得比较复杂妄图用组合数和排列数给算出来后来经菊苣提醒,发现有更无脑的做法这种连续序列相关的,事实上可以用
计数
u012015746
·
2016-04-15 18:00
dp
codeforces
【UOJ#149】【NOIP2015】子串【
计数DP
】
【题目链接】设dp[k][i][j]表示划分成k份,处理到A串的第i个字符,B串的第j个字符的方案数。考虑A[i],B[j]能否和A[i-1],B[j-1]一组,然后转移就行了。转移里有个前缀和,转移时候同时递推算出来,就可以O(1)转移了。【geng4512的题解】/*Pigonometry*/ #include #include #include usingnamespacestd; ty
BraketBN
·
2016-04-15 09:00
【BZOJ3294】[Cqoi2011]放棋子【
计数DP
】
【题目链接】设g[k][i][j]表示第k种颜色恰好占据了i行j列,即没有一行或一列是空的。那么有g[k][i][j]=C[i*j][cnt[k]]-∑(g[k][x][y]*C[i][x]*C[j][y]),注意1 #include usingnamespacestd; typedefunsignedlonglongULL; constintmaxn=35,maxc=12,maxm=905
BraketBN
·
2016-04-09 17:00
计数dp
占坑补题。。最近占的坑有点多。。。
Codeforces659GFenceDivercity【
计数DP
】题目链接:http://codeforces.com/problemset/problem/659/G题意:分析:
Yukizzz
·
2016-04-03 09:00
【BZOJ1042】[HAOI2008]硬币购物【
计数DP
】【容斥原理】
【题目链接】设dp[x]表示不限制硬币使用次数时,和为x的方案数。这个显然可以用背包求出来。因为只有4种硬币,考虑容斥原理。设事件A表示限制第一种硬币的次数时的方案数,事件BCD同理。如果要凑S块钱,那么有左边是我们要求的答案,右边是用容斥原理展开的式子。现在只需要解决如何求括号里的那些。(1)对于只有一种硬币的限制,比如dp[A]:假设第一种硬币有d[1]个,价值为c[1],那么dp[A]=dp
BraketBN
·
2016-04-02 09:00
【Codeforces659G】Fence Divercity【数学】【
计数DP
?】
【题目链接】题意:给出一些积木,现在可以拿走一些积木,但是拿走一个积木的要求是该积木上面的积木都被拿走,并且要求拿走的积木构成的阴影图是连通的。最底下一层不能拿走。求方案数。其实是个数学计数问题,题解说的很详细了,不多说了。/*FootprintsInTheBloodSoakedSnow*/ #include #include usingnamespacestd; typedefunsigne
BraketBN
·
2016-03-31 22:00
数学
【BZOJ1079】[SCOI2008]着色方案【
计数DP
】【奇怪的姿势】
【题目链接】想了一天多,感觉似乎只能是5^15。看了一下题解,发现还能这么玩...神奇的题。【iwtwiioi的题解】/*FootprintsInTheBloodSoakedSnow*/ #include usingnamespacestd; typedefunsignedlonglongULL; constintmaxn=16,maxm=7; constunsignedintp=10000
BraketBN
·
2016-03-29 10:00
计数dp
【BZOJ1025】[SCOI2009]游戏【
计数DP
】【质因数分解】【置换】
【题目链接】只想到求和为n的数的lcm了...以为要求lcm然后离散化dp,最后发现1到1000的lcm已经炸了,然后就无奈了...iwtwiioi神犇说的非常清晰【链接】/*FootprintsInTheBloodSoakedSnow*/ #include #include usingnamespacestd; typedefunsignedlonglongULL; constintmax
BraketBN
·
2016-03-27 20:00
【BZOJ1037】[ZJOI2008]生日聚会Party【
计数DP
】【特殊的姿势】
【题目链接】设dp[i][j][k1][k2]表示前i个男生,前j个女生,男生比女生最多多k1个,女生比男生最多多k2个。有两种决策,(1)在下一个位置放男生,那么有dp[i+1][j][k1+1][max(k2-1,0)]+=dp[i][j][k1][k2]。(2)在下一个位置放女生,那么有dp[i][j+1][max(k1-1,0)][k2+1]+=dp[i][j][k1][k2]。能这么做的
BraketBN
·
2016-03-23 07:00
计数dp
【BZOJ1030】[JSOI2007]文本生成器【AC自动机】【
计数DP
】
http://www.lydsy.com/JudgeOnline/problem.php?id=1030AC自动机经典题型,数据不大,不用矩阵快速幂优化。/*FootprintsInTheBloodSoakedSnow*/ #include #include #definecls(a,x)memset(a,x,sizeof(a)) usingnamespacestd; constintmaxn
BraketBN
·
2016-03-19 14:00
AC自动机
矩阵乘法
【LA3942】Remember the Word【Trie】【
计数DP
】
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=22&page=show_problem&problem=1943大白上的题。设dp[i]表示后缀S[i...L]的分解方案数,那么有dp[i]=∑(dp[i+len(x)),单词x是S[i...L]的前缀。每次转移,去trie
BraketBN
·
2016-03-18 10:00
trie
【SPOJ-MAIN75】BST again【
计数DP
】【记忆化搜索】
题意:节点个数为n,编号分别为1到n,高度为h,求排序二叉树的个数。一开始写了个预处理DP,结果TLETLETLETLETLE...然后发现可以写记忆化搜索...当前二叉树的方案数等于左子树的方案数×右子树的方案数...然后就可以记忆化搜索了。#include typedefunsignedintuint; typedefunsignedlonglongULL; constintmaxn=50
BraketBN
·
2016-02-23 21:00
dp
二叉树
记忆化搜索
【SPOJ-LCM】The Time of Day【
计数DP
】【离散化】
题意:从1到n这n个数中选出一些数,使得它们的lcm不小于M。(n #include usingnamespacestd; typedefunsignedlonglongULL; constintmaxn=45,maxs=40005; intprime[]={0,2,3,5,7,11,13,17,19,23,29,31,37},cnt=12; intp[]={0,5,3,2,1,1,1,1
BraketBN
·
2016-02-23 18:00
dp
计数dp
【SPOJ-MYQ5】The Nerd Factor【
计数DP
】
题意:n个人分组,每组不少于k个人,求方案数。先O(n^2)预处理,然后O(1)回答就好。#include constintmaxn=1001,p=1000000007; intdp[maxn][maxn]; inlineintiread(){ intf=1,x=0;charch=getchar(); for(;ch'9';ch=getchar())f=ch=='-'?-1:1; for(;
BraketBN
·
2016-02-22 14:00
计数dp
Codeforces 628D Magic Numbers
分析:
计数dp
Let’scallanumberd-magicifdigitdappearsindecimalpresentationofthenumberonevenpositionsandnowhereelse
Yukizzz
·
2016-02-22 10:00
上一页
1
2
3
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他