上一页 1 ··· 3 4 5 6 7 8 9 下一页
摘要: 方法:dfs 状态压缩 方法比较明显,就是一个基本的回溯问题。据说直接做会超时,然而我还是过了。。 code: 1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include <iostream> 5 #inclu 阅读全文
posted @ 2017-02-01 02:09 大四开始ACM 阅读(324) 评论(0) 推荐(0) 编辑
摘要: A. Dasha and Stairs 保证a,b不同时为0,而且a 和 b 的绝对值不超过1即可。(心态崩了的我强行写出一个暴力,枚举了所有的情况。) code: B. Dasha and friends 对于两个跑道,分别计算出每个片段的长度。固定第一个跑道的起点,枚举第二个跑道的起点,看两个跑 阅读全文
posted @ 2017-02-01 00:53 大四开始ACM 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 方法:桥 2015 WF的题,很巧妙,看过题解恍然大悟。这道题本质是将一个无向图的边用k种颜色染色,使得对于每一个环,这个环上每种颜色的边,数量相同。首先,我们说一个intuition,如果我们把每个环的长度都求出来并且求gcd,那么这个gcd应该是最大长度的倍数。 code: 1 #include 阅读全文
posted @ 2017-01-31 21:31 大四开始ACM 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 方法:最小表示法 题意即求最小表示法,带入模版即可。 code: 1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include <iostream> 5 #include <string> 6 #include 阅读全文
posted @ 2017-01-31 19:34 大四开始ACM 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 方法:Manacher Manacher算法在O(length) 时间内求出各个回文子串的长度。O(length) 时间检查时那一种情况。 code: 1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include 阅读全文
posted @ 2017-01-31 18:09 大四开始ACM 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 方法:最小表示法 题意及求一个string最小表示法的启示index。套用模版即可。 code: 1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include <iostream> 5 #include <str 阅读全文
posted @ 2017-01-31 17:36 大四开始ACM 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 方法:hash 二分 最优化问题转化为判定性问题。先预处理每个string的前缀hash,然后对于每组query,二分答案。当两个prefix 的hash value相同的时候,稳妥的方法是用O(prefix.length())的方法检查这两个prefix是否相同(1.430s); 本题采用 bkd 阅读全文
posted @ 2017-01-31 16:10 大四开始ACM 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 方法:AC自动机 先把禁止的string插入ac自动机中,然后再这个自动机上求最长的合法路径。如果出现环或者最长路径长度为0,则输出“No";否则输出最长路径。 code: 1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 阅读全文
posted @ 2017-01-31 15:21 大四开始ACM 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 方法:Trie 看了题解,有两种做法,大致是相通的。这道题重点在于如何判重。 建立两个trie,取名prefix 和 suffix。把所有string插入第一个trie,每个节点就代表一种prefix。同理,把所有string反转之后插入第二个trie,每个节点就代表一个suffix。如果没有重复的 阅读全文
posted @ 2017-01-31 12:31 大四开始ACM 阅读(403) 评论(0) 推荐(0) 编辑
摘要: 方法:Hash 一定要好好读题,原题的要求即让你判断一个string时候有两个长度大于3的回文substring,这两个substring可以相交但是不能包含另一方。 一个很重要的observation是我们只需要找长度为3 或者长度为4的回文substring即可(贪心),可以证明, 找长度更长的 阅读全文
posted @ 2017-01-31 10:18 大四开始ACM 阅读(248) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 下一页