2014年8月6日
摘要: 在2-SAT,最让我纠结的还是添加有向线段的函数了void add_clause(int i,int a,int j,int b){ int m=2*i+a; int n=2*j+b; G[m^1].push_back(n); G[n^1].push_back(m);}这里a,b因为只有真假两种情况... 阅读全文
posted @ 2014-08-06 12:50 Love风吟 阅读(529) 评论(0) 推荐(0) 编辑
2014年8月5日
摘要: HDU2896 病毒的侵扰http://vjudge.net/problem/viewProblem.action?id=16404题目大意:记录每个病毒的编号,并给出一些网站的源码,分别输出网站及其对应编号中所含病毒的编号,没有就不输出最后输出有病毒网站的个数这道题需要注意的是这个所有ASCII码... 阅读全文
posted @ 2014-08-05 16:36 Love风吟 阅读(182) 评论(0) 推荐(0) 编辑
摘要: HDU 2222 题意:给出N(N#include #include using namespace std;#define N 500005char str[1000005];struct AC{ int ch[N][26],fail[N],val[N],last[N],tmp,root; ... 阅读全文
posted @ 2014-08-05 16:20 Love风吟 阅读(214) 评论(0) 推荐(0) 编辑
2014年8月4日
摘要: 这道题的总体思路就是找到连通量让它能够看作一个集合,然后找这个集合的度,度数为1的连通量为k,那么需要添加(k+1)/2条边才可以保证边双连通这里因为一个连通量中low[]大小是相同的,所以我们用ans[low[i]]++来计度数这道题我最开始按学长的模板来写。。。。MLE到哭了,也不知道这道题为什... 阅读全文
posted @ 2014-08-04 23:22 Love风吟 阅读(254) 评论(0) 推荐(0) 编辑
2014年8月3日
摘要: 邻接矩阵:#include #include #include using namespace std;#define min(a,b) a s;void dfs(int u){ Edge t,tt; dfn[u]=low[u]=++tmpdfn,visit[u]=1; for(i... 阅读全文
posted @ 2014-08-03 13:36 Love风吟 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 1.Codeforces 20Cspfa算法的简单题,在这个过程中多了一个记录连接最短路径上的前一个节点的位置的数组,然后将这个数组逆向输出在这道题目中,我路径数组范围居然忘记*2了,结果一直报错,找了好久,%>_#include #include #include using namespace ... 阅读全文
posted @ 2014-08-03 13:31 Love风吟 阅读(125) 评论(0) 推荐(0) 编辑
2014年8月2日
摘要: 第一题HDU1698http://acm.hdu.edu.cn/showproblem.php?pid=1698这是在区间上进行整段的修改操作,我们就用to[]数组代表修改的lazy标记记住在构建树和在change函数中自顶向下更新的时候,一定要注意重新回去更新上层的节点,所以末尾需加上update... 阅读全文
posted @ 2014-08-02 00:08 Love风吟 阅读(651) 评论(0) 推荐(0) 编辑
2014年8月1日
摘要: 题目链接http://vjudge.net/problem/viewProblem.action?id=34650题目大意:给定n个点m条边的加权有向图,求平均权值最小的回路。平均权值=路径权值之和/路径边数我们可以通过找到他其中的最小和最大值,然后通过二分不断查找满足的点,然后尽可能的取到它的最大... 阅读全文
posted @ 2014-08-01 17:34 Love风吟 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://vjudge.net/problem/viewProblem.action?id=14877题目大意:要尽可能多的烧毁桥,另外还要保证图的连通性,问哪些桥是绝对不能烧毁的我们很容易看出不能烧毁的是必然是作为割边存在的桥。求割边,我们用Tarjan算法,这与求割点有点小区别在与... 阅读全文
posted @ 2014-08-01 16:02 Love风吟 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一个网络组,每台机子与其他机子的关系,让你找到所有的割点,如果没有割点,输出无这道题目就是最直接的求割点问题,我在这里用的是邻接矩阵来存储机子之间的关系割点问题的求解需要对深度优先搜索序数有比较好的理解dfn[]用于存储当前的优先搜索序数,low[]存储当前点通过子节点或是回路所能达到... 阅读全文
posted @ 2014-08-01 12:06 Love风吟 阅读(215) 评论(0) 推荐(0) 编辑