摘要: KMP - 一对一 计算next数组的方法是对于长度为n的匹配串,从0到n-1位依次求出前缀后缀最大匹配长度。 下面的写法是仅仅检测有没有匹配然后返回第一个匹配位置,而不是返回所有匹配位置。 字典树 - 一对多 其实Trie也叫做前缀树。 基本性质 1,根节点不包含字符,除根节点意外每个节点只包含一 阅读全文
posted @ 2019-02-28 22:21 韵意 阅读(485) 评论(1) 推荐(0) 编辑
摘要: https://vjudge.net/contest/70324 A - Beautiful numbers 统计区间内的,被数位上各个为零数字整除的数的个数。 下面是暴力的数位dp写法,绝对会TLE的,因为这个要深入到每个数字的最后才能判断是否合法。因为(错误的状态设计导致完全变成暴力dfs搜索) 阅读全文
posted @ 2019-02-28 22:05 韵意 阅读(171) 评论(0) 推荐(0) 编辑
摘要: https://vjudge.net/contest/65959 A - 棋盘问题 随便写个搜索就可以了……每一行从前面所有行里没放棋子的深入搜索就可以,因为行数太小了所以太暴力了。我当时写的什么鬼东西,现在都不忍直视了。这里有几个可以剪枝的地方,比如判断剩下的行够不够放完剩下的棋子。 阅读全文
posted @ 2019-02-27 18:16 韵意 阅读(202) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.org/problemnew/show/P2657 不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 这道题是个显然到不能再显然的数位dp了。 来个最神奇的dp[i][j]表示i位数,开头为j的windy数的个数吧。 那么dp[i][j]的求法是很 阅读全文
posted @ 2019-02-27 01:04 韵意 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 之前一直都没有想清楚整数的二分到底是要打算怎么搞。 首先约定二分的区间为 $[l,r]$ 闭区间。 看一下下面这个实现,由于我们的约定,所以l与r都要取能取到的(合法的)值。 之前为什么会觉得边界条件是 $l$ 和 $r$ 相差为1,其实边界条件是 $l$ 和 $r$ 重合。其上一步的条件是 $l$ 阅读全文
posted @ 2019-02-27 00:42 韵意 阅读(112) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/problemset/problem/279/C 第一次遇到这一类区间内递增递减的问题,考虑的顺序对了但是考虑的方向错了。我不应该考虑区间中间的顶峰开始往左右走,而是应该从左右往中间走。 要按结点数为 $n$ 高为 $h$ 的树,由高为 $h-1$ 的左 阅读全文
posted @ 2019-02-24 21:40 韵意 阅读(260) 评论(0) 推荐(0) 编辑
摘要: DP的学习计划,刷 https://codeforces.com/problemset?order=BY_RATING_ASC&tags=dp 遇到了这道题 https://codeforces.com/problemset/problem/702/A 以为是最长上升子序列(Longest Incr 阅读全文
posted @ 2019-02-24 21:37 韵意 阅读(191) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/problemset/problem/1081/C 这道题是不会的,我只会考虑 $k=0$ 和 $k=1$ 的情况。 $k=0$ 就是全部同色, $k=1$ 就是左边一个色右边一个色, $m(m-1)$ ,再选转折点有 $i-1$ 种 $C_{i-1}^ 阅读全文
posted @ 2019-02-24 21:36 韵意 阅读(307) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/problemset/problem/1033/C 一开始觉得自己的答案会TLE,但是吸取徐州赛区的经验去莽了一发。 其实因为下面这个公式是 $O(nlogn)$ 的,不是 $O(n²)$ ,所以这样做是可行的。学到了新的知识。 $$\sum\limit 阅读全文
posted @ 2019-02-24 21:34 韵意 阅读(439) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/problemset/problem/706/B 因为没有看见 $x_i$ 的上限是 $10^5$ ,就用了二分去做,实际上这道题因为可乐的价格上限是 $10^6$ ,可以用复杂度为 $O(max(x_i))$ 的dp去做。 也就是说,当这道题的可乐数量 阅读全文
posted @ 2019-02-24 21:32 韵意 阅读(347) 评论(0) 推荐(0) 编辑
摘要: https://scut.online/p/290 一个 N 个数的取数游戏,Kaildls 和 Parco 轮流操作,每次操作从 N 个数中取一个数 y 并把他变成 y-x(满足 x | y 且x < y),无法操作的人输。 假设 Kaildls 先手且两人都是用最优策略,请问最后谁会赢? 第一次 阅读全文
posted @ 2019-02-22 23:14 韵意 阅读(441) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/contest/1114/problem/B 一开始叫我做,我是不会做的,我没发现这个性质。 其实应该很好想才对,至少要选m个元素,其中m个作为最大值,从总体上考虑的话,要是能区分哪些元素处于前m*k大,就把他们m个一组直接划分就好了。 魔理沙dalao 阅读全文
posted @ 2019-02-22 02:18 韵意 阅读(181) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/contest/1114/problem/C 很有趣的一道数论,很明显是要求能组成多少个基数。 可以分解质因数,然后统计各个质因数的个数。 比如8以内,有8/2=4个2+8/4=2个2+8/8=1个2,这样统计是log复杂的。 需要小心的是乘法爆ll的情 阅读全文
posted @ 2019-02-22 01:24 韵意 阅读(168) 评论(0) 推荐(0) 编辑
摘要: https://scut.online/p/261 由于M不是质数,要用扩展欧几里得求逆元,而不是费马小定理! 由于M不是质数,要用扩展欧几里得求逆元,而不是费马小定理! 由于M不是质数,要用扩展欧几里得求逆元,而不是费马小定理! 最后小心逆元是负数的情况。 阅读全文
posted @ 2019-02-21 20:26 韵意 阅读(190) 评论(0) 推荐(0) 编辑
摘要: https://codeforces.com/problemset/problem/1118/D2 也是很好想的一个二分啦。 验证m的可行性的时候,肯定是把最多咖啡因的咖啡先尽可能平均分到每一天,因为同一天内调换喝咖啡的顺序只会非增,而且平均分更优是显然的。 阅读全文
posted @ 2019-02-21 19:01 韵意 阅读(338) 评论(0) 推荐(0) 编辑