网络赛
wjw1340
这个作者很懒,什么都没留下…
展开
-
HDU6152 Friend-Graph【模拟】
题意:判断给定的点中,是否存在3个以上互相无关联 或 互相有关联 思路:赛后听说有这么个定理,拉姆齐定理的通俗表述:6个人中至少存在3人相互认识或者相互不认识。那么n ≥ 6,Bad;否则,暴力判断下就好。 然而没听说过,只能走别的路了。互相有关联,就是存在一个大小为3的环(四个人相互认识,那一定有大小为3的环)。互相无关联,就是找最大独立集,二分匹配,最大独立集 = n - 最大原创 2017-08-19 19:37:06 · 235 阅读 · 0 评论 -
HDU6208 The Dominator of Strings【字符串】
题意:问是否有一个字符串包含其他字符串 思路:有的话,那一定是最长的那一个。最长的有多个的话,那这几个一定要相同;否则,不存在。跑一下AC自动机,把最长的看成目标串,别的看成模式串,看目标串中出现几次模式串。 #include #include #include #include #include #include #include #include #include #i原创 2017-09-18 09:05:11 · 645 阅读 · 0 评论 -
HDU6214 Smallest Minimum Cut【网络流】
题意:求边最少的最小割 思路:首先要知道,最小割=最大流,最小割中,正向割边的流量=容量,也就是满流。本来是这样做的,先跑一边最大流,再把满流的边的容量置1,没满流的inf,再来一遍最大流(最少选几个1,把图分成两份),这时答案就是最少的边,然后WA了 我们把原来的边扩大为(m+1)*c+1,求最大流%(m+1)就是答案。最小割中选的是满流的边,加起来mod(m+1),余数就是我们上一原创 2017-09-18 09:10:06 · 357 阅读 · 0 评论 -
HDU6216 A Cubic number and A Cubic Number【思路】
题意:问一个素数是不是某两个数的立方差 思路:等于一个素数p,那 a-b = 1,后括号里的数等于p,把b化掉,求这个方程是否有整数解 #include #include #include #include #include #include #include #include #include #include #include #include #include #incl原创 2017-09-18 20:11:53 · 435 阅读 · 0 评论 -
HDU6205 card card card【模拟】
题意:有两个数组,a[i]-b[i]可以得到价值,从前往后一次累加,小于0就结束,计算之前拿到的a[i],记为ans,两数组前面的元素可以一起往数组后面移动,求得到最大ans时,移动了几个数组元素 思路:暴力模拟,题目下面写fastIO,加了T,QWQ #include using namespace std; const int maxn=5e6+10; int a[ma原创 2017-09-10 20:27:41 · 214 阅读 · 0 评论 -
Our Journey of Dalian Ends【网络流】
题意:从大连到西安,中间必须经过上海,每个城市只能经过一次,问最短路径 思路:每个点拆成入点、出点,连一条费用0,容量1的边。超级源点连大连、西安的入点,汇点是上海的入点。跑一边最小费用最大流。最大流为2,就输出最小费用;否则-1. #include #include #include #include #include #include #include #include #原创 2017-09-11 19:11:04 · 232 阅读 · 0 评论 -
Query on a string【线段树】
题意:两个字符串,1.问在第一个字符串的a~b中出现几次第二个字符串,2.修改第一个字符串的某个位置 思路:用s数组记录从当前位置开始能不能匹配,能匹配用1表示,用线段树记录,查询a~b,只要询问a ~ b-len2+1 中有几个1,注意边界。修改的话,最多影响s数组中的10个位置,暴力修改下即可。 #include #include #include #include #in原创 2017-09-12 15:50:38 · 195 阅读 · 0 评论