摘要: 题意 一共有P个牧场.由C条双向路连接.两个牧场间可能有多条路.一条路也可能连接相同的牧场.牛棚坐落在牧场1. N (1 <= N <= P) 只奶牛打来了求救电话,说她们的农场没有被摧毁,但是已经无法到达牛棚. 求出最少可能有多少牧场被摧毁. 求最小割 没有被摧毁的连INF 注意这里的是点,要拆成 阅读全文
posted @ 2017-12-29 09:36 Cyhlnj 阅读(191) 评论(0) 推荐(0)
摘要: 题目描述 给出一个n*n的矩阵,每一格有一个非负整数Aij,(Aij <= 1000)现在从(1,1)出发,可以往右或者往下走,最后到达(n,n),每达到一格,把该格子的数取出来,该格子的数就变成0,这样一共走K次,现在要求K次所达到的方格的数的和最大 输入输出格式 输入格式: 第一行两个数n,k( 阅读全文
posted @ 2017-12-29 08:56 Cyhlnj 阅读(132) 评论(0) 推荐(0)
摘要: 网络流 一个点拆成两个,注意要把某一类边连反过来 这样才能保证有限制 # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, sizeof(a)) # def 阅读全文
posted @ 2017-12-28 21:39 Cyhlnj 阅读(128) 评论(0) 推荐(0)
摘要: 最小割 代码 # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, sizeof(a)) # define Copy(a, b) memcpy(a, b, 阅读全文
posted @ 2017-12-28 19:36 Cyhlnj 阅读(160) 评论(0) 推荐(0)
摘要: 二分图匹配(网络流实现) # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, sizeof(a)) # define Copy(a, b) memcpy( 阅读全文
posted @ 2017-12-28 17:35 Cyhlnj 阅读(228) 评论(0) 推荐(0)
摘要: 水题啦 网络流+二分 误差才10^-3,乱搞直接开longlong暴力每个都乘1000,输出时除一下就好了 # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, 阅读全文
posted @ 2017-12-28 15:30 Cyhlnj 阅读(303) 评论(0) 推荐(0)
摘要: 裸的最小割,拆点时要考虑清楚到底是怎么连 如果之前i->i+n,之后又x->y+n,显然出不了解 所以可以改为i+n->i 如果要输出方案 考虑每一个一个点,如果删去这个点,最小割变小了,那么这个点就是所求点。 不输出方案的代码 # include <bits/stdc++.h> # define 阅读全文
posted @ 2017-12-27 22:30 Cyhlnj 阅读(172) 评论(0) 推荐(0)
摘要: 题目描述 星云中有n颗行星,每颗行星的位置是(x,y,z)。每次可以消除一个面(即x,y或z坐标相等)的行星,但是由于时间有限,求消除这些行星的最少次数。 输入输出格式 输入格式: 第1行为小行星个数n,第2行至第n+1行为xi, yi, zi,描述第i个小行星所在的位置。 输出格式: 共1行,为消 阅读全文
posted @ 2017-12-27 22:09 Cyhlnj 阅读(251) 评论(0) 推荐(0)
摘要: 题目描述 在一个农场里有n块田地。某天下午,有一群牛在田地里吃草,他们分散在农场的诸多田地上,农场由m条无向的路连接,每条路有不同的长度。 突然,天降大雨,奶牛们非常混乱,想要快点去躲雨。已知每个田地都建立有一个牛棚,但是每个牛棚只能容纳一定数量的牛躲雨,如果超过这个数量,那多出的牛只能去别的田地躲 阅读全文
posted @ 2017-12-27 20:27 Cyhlnj 阅读(139) 评论(0) 推荐(0)
摘要: 题目描述 XX酒店的老板想成为酒店之王,本着这种希望,第一步要将酒店变得人性化。由于很多来住店的旅客有自己喜好的房间色调、阳光等,也有自己所爱的菜,但是该酒店只有p间房间,一天只有固定的q道不同的菜。 有一天来了n个客人,每个客人说出了自己喜欢哪些房间,喜欢哪道菜。但是很不幸,可能做不到让所有顾客满 阅读全文
posted @ 2017-12-27 19:18 Cyhlnj 阅读(155) 评论(0) 推荐(0)
摘要: 每个人拆成两个点,一个表示接受喜欢的,一个表示不接受喜欢的,(男yes,男no,女yes,女no) 男yes->男no,容量为k;女no->女yes,容量为k 男女喜欢,则男yes->女yes,容量为1 否则男no->女no,容量为1 二分歌曲x,S->男yes,容量为x;女yes->T,容量为x 阅读全文
posted @ 2017-12-27 17:26 Cyhlnj 阅读(146) 评论(0) 推荐(0)
摘要: 题目描述 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来意愿相反的票。我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所有和自己本来意愿发生冲突的人 阅读全文
posted @ 2017-12-27 16:40 Cyhlnj 阅读(173) 评论(0) 推荐(0)
摘要: 把一个任务拆成两个,在s时加入,在e+1时减去即可 直接离散化后上主席树 # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, sizeof(a)) usi 阅读全文
posted @ 2017-12-27 15:27 Cyhlnj 阅读(227) 评论(0) 推荐(0)
摘要: 主席树 离散化后 每个点储存从根到它的路径上的点权 新加边时直接用启发式合并,直接把size小的重构 询问时sum[u]+sum[v]-sum[lca]-sum[fa[lca]]来比较,在树上二分 LCA用倍增求,在启发式合并时暴力更新 连通性用并查集维护,再维护每个联通快的size 空间开大点就可 阅读全文
posted @ 2017-12-26 19:42 Cyhlnj 阅读(166) 评论(0) 推荐(0)
摘要: 题意 给一个数列,每次询问一个区间内有没有一个数出现次数超过一半 题解 主席树,一个数出现次数>一半,这个区间内只有这一个数满足,那么主席树直接维护所有数的出现次数,直接在树上二分查询 # include <bits/stdc++.h> # define RG register # define I 阅读全文
posted @ 2017-12-25 20:47 Cyhlnj 阅读(194) 评论(0) 推荐(0)
摘要: cogs网址 这道题DP 设g[0/1][i][a][b]表示第i个机子做了a个A,b个B,0/1表示当前为A/B的最小代价 N^4转移 设f[i][a][b]表示前i个机子做了a个A,b个B的最小答案 N^5转移 # include <bits/stdc++.h> # define RG regi 阅读全文
posted @ 2017-12-25 19:54 Cyhlnj 阅读(186) 评论(0) 推荐(0)
摘要: 离散化 主席树 每个点记录它到根的路径上的点 查询时u,v,lca,fa[lca]组合起来计算即可 # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, s 阅读全文
posted @ 2017-12-23 11:22 Cyhlnj 阅读(188) 评论(0) 推荐(0)
摘要: 动态区间第k小 离散化后 那么每个点开一棵线段树(主席树)再套一个树状数组在外面 每次询问区间内的树的个数时 相当于进行了一次树状数组求区间和的操作,只是是把树状数组那个点看做主席树,对log棵主席树求区间和 然后每次询问,修改时就是把log棵主席树同时跳到儿子,修改也是log棵 时间复杂度O(nl 阅读全文
posted @ 2017-12-23 11:09 Cyhlnj 阅读(224) 评论(0) 推荐(0)
摘要: 从高位往地位贪心即可 # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, sizeof(a)) using namespace std; typedef 阅读全文
posted @ 2017-12-20 22:23 Cyhlnj 阅读(185) 评论(0) 推荐(0)
摘要: 在两个传送带上分别三分两个点计算 三分套三分 # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, sizeof(a)) # define Sqr(x) ( 阅读全文
posted @ 2017-12-19 21:46 Cyhlnj 阅读(148) 评论(0) 推荐(0)