随笔分类 -  考试总结

摘要:神仙题.jpg 首先答案满足可二分性,二分后变成了判定性问题。 我们想想现在有个 n×mid 的表格,初始时全为 0,每次我们能将一列中 m 个数添上 1,要求最后每一行都不能一样。 现在我们换一种角度,我们考虑一行一行的填,依然要满足上面那两个条件。 最优的操作是我们 阅读全文
posted @ 2020-04-08 21:42 wljss 阅读(147) 评论(0) 推荐(0) 编辑
摘要:考虑先建出来广义后缀自动机,统计出来每个节点在多少个字符串里出现过。 只有出现次数 =k 的节点对我们有用,该节点能贡献的字符串数为 c[i]=dis[i]dis[fa[i]] 一个节点对其原串的答案的贡献就是它所有子串的贡献,也就是从根节点到该节点上所有点 c 值之和。 dfs 阅读全文
posted @ 2020-04-08 21:19 wljss 阅读(135) 评论(0) 推荐(1) 编辑
摘要:挺神仙的一道题。 先建出来 AC 自动机,考虑在上面 DP ,设 f[i] 为在AC自动机上 i 节点时期望还有多长才能结束。 若 i 为一个字符串的结尾,则 f[i]=0 否则 f[i]=1+f[tr[i][j]]26 然后 阅读全文
posted @ 2020-04-08 20:56 wljss 阅读(227) 评论(0) 推荐(0) 编辑
摘要:将序列分块后面对每一个序列维护一个李超线段树 操作一:整块的用李超线段树求,残余的暴力搞。 操作二:因为 v 是正数,所以直接加入一条新的线段就能覆盖掉原来的线段。 操作三:整块的用 tag 标记维护,残块的直接覆盖掉。 注意题面中说操作一和操作三不会超过 105,复杂度有保证。 阅读全文
posted @ 2020-04-08 20:23 wljss 阅读(143) 评论(0) 推荐(0) 编辑
摘要:LCM 只和每个质数的最大次数有关,所以考虑如果每个数都 16 我们就可以状压每个质数出现的次数 f[i2][i3][i5][i7][i11][i13] 为 这 6 个质数的出现次数 这个状态的方案数,转移的话每一项都取 max 即可。 现在每个数都 200 阅读全文
posted @ 2020-04-06 19:03 wljss 阅读(204) 评论(1) 推荐(0) 编辑
摘要:出题人很凉心的把算法写成了题目名 首先我们可以发现每一维的贡献是独立的,这可以从 solve1 里看出来 然后我们可以考虑转化为 DP ,这可以从 solve2 里看出来 我们统计每一维能产生的贡献,就是 a0 面, b1 面, \ 阅读全文
posted @ 2020-04-03 21:12 wljss 阅读(173) 评论(0) 推荐(0) 编辑
摘要:首先我们正着对每一个 j 求一边 i,设为 a[j] 类似的倒着对每个 j 求一边 k,设为 b[j] 那么答案就是 a[i]×b[i+1]阅读全文
posted @ 2020-04-03 20:54 wljss 阅读(76) 评论(0) 推荐(0) 编辑
摘要:一个长度为 n 字符集大小为 k 的字符串,它的回文串的个数是 kn2 发现根据题目里给的操作二, 可以生成 最小循环节的长度 个满足条件的字符串, 用这个长度的字符串拼出来长为 n 的字符串必须是回文串 设这个长度为 l,满足 阅读全文
posted @ 2020-03-17 20:15 wljss 阅读(131) 评论(0) 推荐(0) 编辑
摘要:题目描述 给定一个n,求i=1np|id(p),d(n)表示n的约数个数。 n1011 方法一: 原式等价于\(\displaystyle \sum_{i=1}^{n}\lfloor \frac{n}{ 阅读全文
posted @ 2020-02-15 15:46 wljss 阅读(204) 评论(0) 推荐(0) 编辑
摘要:"模式字符串" 今天考了一道类似点分治的模板题,结果没做出来。 正解就是对每一个分治中心处理出前后缀的个数,统计的时候拼接一下就行了。 阅读全文
posted @ 2020-01-18 19:58 wljss 阅读(215) 评论(0) 推荐(0) 编辑
摘要:T1 n20,mn! 这道题可以证明一定有解,我们每次找出 比我们要凑成的数小且是n!的约数 里最大的数就可以了。跑得飞快~ #include<iostream> #include<cstring> #include<cstdio> #define LL long lo 阅读全文
posted @ 2020-01-17 19:40 wljss 阅读(195) 评论(2) 推荐(0) 编辑
摘要:"T1" 01分数规划 很明显我们需要的区间最大值和最小值在区间两端,因为有L的限制,所以我们可以先做一遍长度为L的滑动窗口。 问题判定的转化,设我们二分的值是v: A[r]A[l]rl+kv $\displaystyle (A[r] rv) 阅读全文
posted @ 2020-01-15 16:05 wljss 阅读(131) 评论(1) 推荐(0) 编辑
摘要:恭贺 treAKer 在 毒瘤之神的考验 一题中取得 rank1 的好成绩,成为新一届 毒瘤之神 ! ...... 结果今天就考了 treAKer 的毒瘤题... T1 考场上看到1e6就想O(n)的做法,结果失败了... 正解思路很神奇,就是先对物品按照a来排序,询问按照m来排序,用双指针一起扫, 阅读全文
posted @ 2020-01-11 22:22 wljss 阅读(244) 评论(0) 推荐(0) 编辑
摘要:"T1" 数据范围很合适.. 第一档就是暴力枚举 第二档就是数位DP 第三档就是矩阵乘法 丢一下学长的 "博客" 任何时候,都不要自信到连暴力分都不要。 阅读全文
posted @ 2020-01-09 18:44 wljss 阅读(166) 评论(1) 推荐(0) 编辑
摘要:T1和T3不太可做..先只放一下 "T2" TMD考场上没算好空间直接MLE爆零... 操作1可以归到操作3里,并且几个人的操作可以合并到一块,用线段树挺好维护的。 对于询问的话可以对每一个节点开一个桶,记录区间内前缀数量,向上合并的时候左儿子直接加,右儿子异或后再加。 发现很多节点根本用不到,动态 阅读全文
posted @ 2020-01-05 21:44 wljss 阅读(146) 评论(0) 推荐(0) 编辑
摘要:"T1圆圈游戏" 暴力DP有60分,设包含圆i的最小的圆是fa[i],那没最终会的得到一棵树,对于一棵子树,选了根节点就不能选子树内其它点,f[i]=max(w[i],f[son]). 瓶颈就在怎么建图,因为圆不相交相切,所以扫描线的时候相对位置不会发生改变,用set维护一下就好啦。 阅读全文
posted @ 2020-01-02 21:46 wljss 阅读(187) 评论(0) 推荐(0) 编辑
摘要:"T1摆棋子" 看到这么多的限制,第一直觉就是网络流,最小费用最大流不能做,因为把棋子代价看成1后最大流的条件并不好满足。 注意到每一行每一列都有一个最小限制,对应到网络流上就是流的下界,整体跑一个有下界的 "最小流" 就可以了。 阅读全文
posted @ 2019-12-30 20:28 wljss 阅读(134) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示