上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: 这个题很乱他的图首先是一个无向图我们在这里面找到无向环和有向环,用无向环的长度和有向环的长度差的gcd来更新答案,一个图一定可以由若干个简单环和边组成我们可以由dfs来找到这些,我们正向边为1反向边为-1把无向图变成有向图. 如果这个图里没有这个限制那么他就一定是,一群橄榄,那么我们记录一下最长橄榄 阅读全文
posted @ 2017-07-12 09:24 TS_Hugh 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 这道题的lct不想说什么...... 这道题是lct的假板子题你需要精简并适当改进LCT给他加上不清真的属性...... 阅读全文
posted @ 2017-07-12 07:41 TS_Hugh 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 这道题首先可以看出答案一定是一条边,而且答案一定在最小生成树上,那么我们就可以在这个最小生成树上维护他与异色儿子的边最小值,所以我们就可以已通过Kruskal和一棵平衡树来解决,时间复杂度是O(n*logn)级别的但是那个大常数..........然后在最外面独立一棵权值线段树来存最终答案..... 阅读全文
posted @ 2017-07-12 06:25 TS_Hugh 阅读(445) 评论(0) 推荐(0) 编辑
摘要: String 3s 512 MB描述硬盘中里面有n个文件,文件从1到n标号,每个文件可以用若干个数字序列来表示,而且每个文件存在一个重要值。现在请你完成一个搜索系统,有m个搜索的操作,如果一个文件中有以这个数字序列为前缀的数字序列,那么这个文件会被搜索到,现在我们想知道会有多少个文件被搜索到,以及这 阅读全文
posted @ 2017-07-11 20:51 TS_Hugh 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 求补图连通块,用链表优化,势能O(n+m) 阅读全文
posted @ 2017-07-10 19:25 TS_Hugh 阅读(262) 评论(1) 推荐(0) 编辑
摘要: 这个题你发现打暴力的话可以记忆化搜素加剪枝,那么意味着可以递推,我们搜的话就是1010^9我们就往下匹配遇到匹配成功就return,那么我们可以想一下什么决定了状态,我们考虑kmp的过程,对于我们目前匹配到的距离,下一次在匹配时不会用他之后的字符,那么只要我们知道匹配到的距离和已匹配长度就行了,那么 阅读全文
posted @ 2017-07-09 20:34 TS_Hugh 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 第一道LCT。 动态维护集合就好了。 LCT就是一群链通过父亲关系练成一颗不太连续的树,通过儿子关系组成实边,在这里没有查找单点一说,都是直接拎起来,对于一条链他对外界的有用反馈就是他的链父亲以及需求点的真实位置,而每次cut的时候就会把标记下方好,每次spaly都会找到这个点在这条链中的真实位置, 阅读全文
posted @ 2017-07-09 12:59 TS_Hugh 阅读(233) 评论(0) 推荐(0) 编辑
摘要: #include #include #define N 55 #define M 2000005 using namespace std; inline void read(char *s) { char ch=getchar(); while(ch'Z')ch=getchar(); int len=0; while(ch>='A'&&chch[s[i]-'A']... 阅读全文
posted @ 2017-07-08 10:48 TS_Hugh 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 我表示不是很懂HDU卡内存的优良传统.......以及他们卡输出的良好风尚........ AC自动机裸体关键在于http://ascii.911cha.com/ 阅读全文
posted @ 2017-07-07 12:22 TS_Hugh 阅读(158) 评论(0) 推荐(0) 编辑
摘要: #include #include #include #include #define L 51 #define LL 100000002 using namespace std; char c[11][L],s[LL]; struct Trie { Trie *ch[26],*fail,*last; int who; Trie() { memset... 阅读全文
posted @ 2017-07-06 12:20 TS_Hugh 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 这个题让我认识到我以往对于图上期望概率的认识是不完整的,我之前只知道正着退还硬生生的AC做过的所有图,那么现在让我来说一下逆退,一般来说对于概率性的东西都只是正推,因为有了他爸爸才有了他,而对于期望性的东西可以说是从终点开始每个点都是以这个点为起点到终点的期望,那么就可以是有本节点开花遗传和继承。 阅读全文
posted @ 2017-07-06 10:22 TS_Hugh 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 看到这道题想什么? 一个好转移的状态由于T最多444所以把每个点控制在O(400000)以内,所以对于n和r最多乘一次因此猜f[n][r],f[r][n],首先一轮一轮的搞不好转移,那么先想一想f[n][r],如果是从头开始,在转移到下一位的时候,前面的会对后面的有恶心的影响,那么倒着来f[i][j 阅读全文
posted @ 2017-07-05 14:36 TS_Hugh 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 先Tarjan缩点 强连通分量里用高斯消元外面直接转移 注意删掉终点出边和拓扑 阅读全文
posted @ 2017-07-05 08:29 TS_Hugh 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 这个题我们可以想象成_ ___ __的一个水柱它具有一遍优一遍行的性质因此可以用来二分最小值len,而每次二分后我们都要验根,we可以把这个水柱想成我们在每个数段里取前一段的那个数后一段有也不选,而且最后一个区间的第一个数一定可以使这个数区间对应的数,那么我们只要在某个位置上不选或选就可以啦,这we 阅读全文
posted @ 2017-07-02 17:18 TS_Hugh 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 大前提,把两个点的组合看成一种状态 x 两种思路 O(n^7) f[x]表示在某一个点的前提下,这个状态经过那个点的概率,用相邻的点转移状态,高斯一波就好了 O(n^6) 想象成臭气弹,这个和那个的区别只是状态维数变化,f[x]表示这个状态出现的概率,高斯一下就好了 我比较傻只想出来O(n^7) 阅读全文
posted @ 2017-06-28 09:09 TS_Hugh 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 首先这道题让我回忆了一下最短路算法,所以我在此做一个总结: 带权: Floyed:O(n3) SPFA:O(n+m),这是平均复杂度实际上为O(玄学) Dijkstra:O(n+2m),堆优化以后 因此,稀疏图:SPFA或 Dijkstra可以再大约O(n2)左右的时间跑完每个点到每个点的最短路 稠 阅读全文
posted @ 2017-06-26 16:55 TS_Hugh 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 初步分析:把赢了的巡回赛的a值加起来就是最后的剩余空间 这个明显的是状态转移的dp啊,然而他的状态比较骚是个数组,表示剩余空间,f(i,j,b),i表示比到第几场,j表示赢了几场,b就是里面的核心状态,总起来就是在比到第i场赢了j场时背包剩余空间b的概率,所以他们加起来一定是1,状态转移的话可以看做 阅读全文
posted @ 2017-06-25 18:11 TS_Hugh 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 经分析可知:I.操作每个灯可看做一种异或状态 II.每个状态可看做是一些异或状态的异或和,而且每个异或状态只能由它本身释放或放入 III.每一种异或状态只有存在不存在两中可行状态,因此这些灯只有同时处于不存在才可以,而两种异或状态之间没有关系因此可以把这些状态看做一样的,因此counts的是异或状态 阅读全文
posted @ 2017-06-25 15:53 TS_Hugh 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 记住一开始和后来的经过是两个事件因此概率可以大于一 阅读全文
posted @ 2017-06-24 11:02 TS_Hugh 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 先弗洛伊德,然后把状态拆分遗传 阅读全文
posted @ 2017-06-24 11:00 TS_Hugh 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 树上莫队求mex,关键点:I.树上莫队(废话)II.树状数组+二分 log^2 求mex 树上莫队的时间复杂度一定是O(n1.5)的证明 I.右端点dfs序 II.左端点均摊(卡的话是一个近似二次函数的东西,会随着卡你的地方增多而卡的程度减小) 阅读全文
posted @ 2017-06-24 10:58 TS_Hugh 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 水果~~~~ 关于四个while可行性的证明:区间有正确性所以不管那团小东西用没有duang~反它最终总会由于两次覆盖二准确 关于区间种数可行性的证明:他会在0 1间(或两边)来回跳动(过程中),最终会停在一个大于等于0的地方由于多次覆盖,最终也会趋于准确 阅读全文
posted @ 2017-06-21 16:14 TS_Hugh 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 这个用莫队做会被卡,但是我还是...... 收获在于树状数组维护后缀和以及双维排序...... 莫队的时间复杂度比想象中的要好一些.... 然而我还是被卡了...... 阅读全文
posted @ 2017-06-21 15:31 TS_Hugh 阅读(338) 评论(0) 推荐(0) 编辑
摘要: //论全局变量的杀伤力....QAQ#include #include #include #include #include #define MAXN 100005 using namespace std; int f[MAXN]; struct Tree { int to,next; }c[MAXNson[MAXN]; int head[MAXN],t; inline void add(... 阅读全文
posted @ 2017-06-19 16:44 TS_Hugh 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 必须要记住字符串很好卡一不小心就O(n²),别问我为什么这么说.....QAQ 这题首先满足位数与字母两个限制,那么我们*分大块?分小块,求各块hash值,同时预处理出来每个字符串的前缀hash这样就可以O(1)对比了(千万不要忘记hash字符串对比的功能,我在考试的时候一脑抽就忘了......) 阅读全文
posted @ 2017-06-19 16:42 TS_Hugh 阅读(394) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 下一页