上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 28 下一页
该文被密码保护。 阅读全文
posted @ 2019-02-05 15:10 Creed-qwq 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 比赛的时候又被垃圾题艹翻了啊。 这个题显然是区间dp 考虑怎么转移。 类似消除方块和ZYB玩字符串那样的一个DP。 可以从左到右依次考虑消除。 dp[l][r][k][flag]表示区间l,r左边粘着k个flag。 转移方式: 1.考虑强行去继续黏上下一个字符并使k+1。 2.考虑把一段跳过去,让被 阅读全文
posted @ 2019-02-02 23:10 Creed-qwq 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 又傻掉了呢 看到连乘显然直接转原根变成线性齐次递推式。 矩阵乘法求一发。 然后分析一下发现是个x^k=m的形式。 按照套路解一下高次方程就好了。 需要用到exgcd和bsgs。 cpp include include include include include include include i 阅读全文
posted @ 2019-02-02 22:04 Creed-qwq 阅读(184) 评论(0) 推荐(0) 编辑
摘要: (k<=1e5,求的方案是有顺序的,即{2,3}和{3,2}不同) sol: 首先考虑没有1的限制怎么做。 就是一个很简单的插板法。 对每个因子插板法一下。 O(m)的复杂度就能求出来。 正解呢? 考虑容斥。 这样可以把不能为1的那个限制去掉。 枚举一下至少有i个位置为1后, 不妨把上一步中那个方法 阅读全文
posted @ 2019-02-01 06:15 Creed-qwq 阅读(14) 评论(0) 推荐(0) 编辑
摘要: https://www.cnblogs.com/butterflydew/p/10457362.html 一定注意容斥的时候-1的系数多减了1。 然后一种很常见的min-max容斥的策略就是以每个元素的出现时间作为权值。 最后一个出现的时间即为max,也就等价于全集出现的时间。 阅读全文
posted @ 2019-02-01 06:02 Creed-qwq 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 题意: sol: 考虑floyed 直接暴力做的话复杂度是k×n^3会炸。 考虑一个比较神仙的分块做法。 注意到我们是可以直接求单独某个k的矩阵,使用矩阵快速幂即可(取min的矩阵乘法)。 单独求一次的复杂度是O(n^3logk)。 设块的长度为100。 对k/100的分块边界求一下它们的矩阵。 这 阅读全文
posted @ 2019-02-01 01:46 Creed-qwq 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 题意:给出一个012序列,进行m次操作,每次选择一个区间并把它变成全0。 要求序列上的2最终还是2,序列上的1最终变成0。 考虑只有0和2怎么做。 求出有多少种区间的选择方法数x。 ans=x^m。 带上1以后,有一个暴力的做法,直接容斥那些1最后没有变成0,然后把这些看成2来做。 复杂度O(2^n 阅读全文
posted @ 2019-01-31 20:29 Creed-qwq 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 题意: 容斥二进制意义下至少哪些位置不相等。 cpp include include include include include include include include include define N 2200000 define L 2000000 define eps 1e 7 d 阅读全文
posted @ 2019-01-31 17:03 Creed-qwq 阅读(168) 评论(0) 推荐(0) 编辑
摘要: n个物品,a选了收益是ai,b选了收益是bi,双方轮流选,目的都是最大化自己的收益 对方的收益,都使用最优策略,n 阅读全文
posted @ 2019-01-27 21:30 Creed-qwq 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 算法流程 x0 > y1 表示x为false时y必须为true 最后输出的时候谁的bel小选谁 前后缀建图 例:要求n个变量满足至多有1个为true。 暴力:一个点的true向其它n-1个点的false连边,复杂度O(n^2)。 正解:prei表示前i个点是否有真。 prei的true向prei+1 阅读全文
posted @ 2019-01-27 20:51 Creed-qwq 阅读(148) 评论(0) 推荐(0) 编辑
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 28 下一页