摘要:
题意:给n个分成两个组,保证每个组的人都相互认识,并且两组人数相差最少,给出一种方案。 析:首先我们可以知道如果某两个人不认识,那么他们肯定在不同的分组中,所以我们可以根据这个结论构造成一个图,如果两个不相互认识, 那么就加一条边,然后如果这个图是二分图,那么这分组是可以,否则就是不可能的。然后dp 阅读全文
posted @ 2017-03-02 18:08
dwtfukgv
阅读(304)
评论(0)
推荐(0)
摘要:
题意:求一个无向图的点连通度。 析:把每个点拆成两个,然后中间连接一个容量为1的边,然后固定一个源点,枚举每个汇点,最小割。 代码如下: 阅读全文
posted @ 2017-03-02 14:53
dwtfukgv
阅读(257)
评论(0)
推荐(0)
摘要:
题意:有一个计算机网络,输入节点数n,输入网络流源点和汇点src,des,再输入双向边数m。给出m条边的负载,求最大流。 析:直接上网络流的最大流。 代码如下: 阅读全文
posted @ 2017-03-02 14:14
dwtfukgv
阅读(281)
评论(0)
推荐(0)
摘要:
题意:n个人,每个人ci的金币,每天最富有的人都会给最贫穷的人1金币,问k天后最富有人和最贫穷的人差了多少金币。 析:首先先这样想,如果每个穷人每天获得一个金币,那么k天后,最穷的人的金币为x,同理,每个富人每天丢一枚金币,那么k天后最富的人金币为y, 那么如果 x < y那么y-x就是答案,否则就 阅读全文
posted @ 2017-03-02 14:01
dwtfukgv
阅读(208)
评论(0)
推荐(0)
摘要:
题意:给定一个正整数数组,求最长的区间,使得该区间内存在一个元素,它能整除该区间的每个元素。 析:暴力每一个可能的区间,从数组的第一个元素开始考虑,向两边延伸,设延伸到的最左边的点为l, 最右边的点为r。那么我们下一点考虑r+1即可, 因为[l, r]之间不会有更优解。 代码如下: 阅读全文
posted @ 2017-03-02 13:25
dwtfukgv
阅读(170)
评论(0)
推荐(0)
摘要:
题意:给定 n 种不同的钞票,然后用q个询问,问你用最多k张,最多两种不同的钞票能不能组成一个值。 析:首先如果要求的值小点,就可以用DP,但是太大了,所以我们考虑一共最多有n * k种钞票,如果每次都挨着遍历,时间肯定受不了, 所以我们可以枚举其中一种,然后再用二分查找快速查找另一种,然后不断更新 阅读全文
posted @ 2017-03-02 13:07
dwtfukgv
阅读(239)
评论(0)
推荐(0)
摘要:
题意: 析:利用单调栈,维护一个单调递增的栈,首先在最低的平台开始,每次向两边进行扩展,寻找两边最低的,然后不断更新宽度。 代码如下: 阅读全文
posted @ 2017-03-02 12:21
dwtfukgv
阅读(155)
评论(0)
推荐(0)
浙公网安备 33010602011771号