随笔分类 -  计数dp

[CSP-S模拟测试97]题解
摘要:A.小盆友的游戏 感觉题解解释的很牵强啊……还是打表找规律比较靠谱 对于每个人,它构造了一个期望函数f(x),设它的跟班个数为cnt[x],那么令f(x)=2cnt[x]1(??鬼知道为什么要等于这个) 然后再定义当前局面的期望函数为每个人期望函数之和。 然后你会发现每次猜拳后局
208
0
0
[CSP-S模拟测试76]题解
摘要:咕咕咕 A.序列 无解情况:n>abn<a+b1 把序列分成B段,每段内部上升,各段分界处构成下降子序列。 实现并不是太简单,要动态地考虑一下边界什么的。 B.购物 按套路来讲,答案区间应该是连续的? 并不是。如果把a[]排序后求前缀和,会发现如果$\frac{a_i}{2} >
200
0
0
[CSP-S模拟测试74]题解
摘要:A.梦境 如果不用去重一定要用Multiset……挂30分算是出题人手下留情了。 贪心。把点排序,区间按右端点递增排序。依次考虑每个区间,取能选的最靠左的点即可。multiset维护。 B.玩具 让我懒癌发作的神dp 注意问题的转化方式以及辅助数组的正确使用姿势。 比较难的计数往往需要探究已给出条件
181
0
0
[NOIP2015]子串 题解
摘要:题目描述 有两个仅包含小写英文字母的字符串A和B。 现在要从字符串A中取出k个互不重叠的非空子串,然后把这 k 个子串按照其在字符串 A 中出现的顺序依次连接起来得到一个新的字符串,请问有多少种方案可以使得这个新串与字符串 B 相等? 注意:子串取出的位置不同也认为是不同的方案。 输入格式 第一行是
200
0
0
[CSP-S模拟测试72]题解
摘要:A.简单的序列 遇到括号匹配,先将左右括号转化为1和-1。 那么一个括号序列合法的必要条件:总和为0且所有时刻前缀和0。 用dp预处理出长度为i,总和为j的括号序列数量。那么如果p的方案数为dp[i][j],与之匹配的q的方案数即为dp[nmi][j+m]
166
0
0
[CSP-S模拟测试69]题解
摘要:kuku A.chess 首先考虑m=n的情况,中间没有限制,所以直接设dp[i][j]为考虑前i列,共放j枚棋子的方案数转移即可。刷表控制一下边界。 不难发现i列和i+pn列的的情况是一样的,所以沿用上面那个转移, 改为 $dp[i][j+k]=\sum dp[i-1][j
200
1
0
[CSP-S模拟测试52]题解
摘要:A.平均数 看到第K小,又确定跟平衡树/主席树没有关系,可以把问题转化为有K-1个答案比它小再考虑二分。 二分平均值x,之后将原序列统一减去x。这时序列中区间和<0的区间个数就是原序列中平均值小于x的区间个数。 求个前缀和,那么区间和<0转化成suml>sumr,归并排序求逆序对即可。复
174
0
0
[CSP模拟测试43、44]题解
摘要:状态极差的两场。感觉现在自己的思维方式很是有问题。 (但愿今天考试开始的一刻我不会看到H I J) A 考场上打了最短路+贪心,水了60。 然而正解其实比那30分贪心好想多了。 进行n次乘法后的结果一定可以化成S×bn+m×a的形式,并且m是b的若干次幂(带系数
213
0
0
[NOIP模拟测试34]反思+题解
摘要:不要陷入思维定势,如果长时间没有突破就要考虑更改大方向. 不要把简单问题复杂化. 做完的题就先放下,不管能拿多少分。不能过一段时间就回来调一下. Solutions: A.次芝麻 因为n+m始终为定值,所以可以发现每次操作相当与对nm任意一个数在模n+m意义下$\times 2
172
0
0
[NOIP模拟23]题解
摘要:中间鸽了好几篇啊QAQ……有时间再补吧…… A.mine sbdp,考场上写的巨麻烦不过还是能A的(虽然MLE了……每一维都少开1就A掉了555)。设dp[i][j][k]为枚举到第i位,第i位是j,第i-1位是k的方案数。j和k都是0~3的整数,分别代表有前后几个雷/就是雷。 然后大力分类讨论
174
0
0
[HNOI2011]卡农 题解
摘要:题目描述 众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则。他将声音分成 n 个音阶,并将音乐分成若干个片段。音乐的每个片段都是由 1 到 n 个音阶构成的和声,即从 n 个音阶中挑选若干个音阶同时演奏出来。为了强调与卡农的不同,他规定任意两个片段所包含的
295
0
1
[NOIP模拟测试11] 题解
摘要:A.string 和河北的一道省选题很像。考场上写的暴力桶排,正解其实就是优化一下这个思路。 开线段树维护字符串中每个字母出现的次数。对于每条询问,区间查询、区间赋值维护即可。 另外,本题卡常严重,正解能被卡到40到90不等。所以直接循环展开乱搞一波? 暴力40分代码: 被卡的90分代码: 丧心病狂
212
4
0
[NOIP模拟测试3] 建造游乐园 题解(欧拉图性质)
摘要:Orz 出题人石二队爷 我们可以先求出有n个点的联通欧拉图数量,然后使它删或增一条边得到我们要求的方案 也就是让它乘上Cn2 (n个点里选2个点,要么删边要么连边,选择唯一) 那么接下来就是求有n个点的联通欧拉图数量f[n] 首先来看欧拉图的定义: 一张无向图为欧拉图,当且仅当无向图连通
303
0
1
[CQOI2011]放棋子 题解(dp+组合数学)
摘要:Description Input 输入第一行为两个整数n, m, c,即行数、列数和棋子的颜色数。 第二行包含c个正整数,即每个颜色的棋子数。 所有颜色的棋子总数保证不超过nm。 N,M<=30 C<=10 总棋子数有大于250的情况。 输入第一行为两个整数n, m, c,即行数、列数和棋子的颜色
225
2
1
//雪花飘落效果
点击右上角即可分享
微信分享提示
深色
回顶
收起