摘要: 题意:给一堆点,一部分是牛,一部分是机器,每头牛必须要走到一个机器,每个点之间有距离,要求每头牛都能找得到一台机器(机器有最大容量)的情况下,走的最远的牛距离最小 题解:二分答案,小于该距离的边才能加进来,先用floyd预处理距离,然后跑最大流看满不满足条件 #include<map> #inclu 阅读全文
posted @ 2017-11-13 20:16 walfy 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一张二分图,求右边点到汇点的最小容量(保证流量为n)是多少 题解:二分答案,每次重新建边跑最大流,看是不是为n就好了 #include<map> #include<set> #include<cmath> #include<queue> #include<stack> #include<v 阅读全文
posted @ 2017-11-13 15:42 walfy 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 题意:给一堆石子,每次移动一颗到另一堆,要求最小次数使得,所有石子数gcd>1 题解:枚举所有质因子,然后找次数最小的那一个,统计次数时,我们可以事先记录下每堆石子余质因子 的和,对所有石子取余,sort,从后往前扫(这样做的原因是取余后的数组只有可能有三种,排序之后最后的就是最大的,加上质因子减去 阅读全文
posted @ 2017-11-13 14:07 walfy 阅读(791) 评论(0) 推荐(0) 编辑
摘要: 题意:给你n个点,要求找到一个点,和一个圆心,使得有n/2向上取整个点在圆上,一定有满足条件的点存在 题解:既然一定有解,而且圆上有n/2向上取整个点,那么我们可以通过随机来找三个点来确定一个圆心,和半径,可以看出这三个点在圆上的概率是很大的,注意要特判点数为1,2,3,4的情况 ps:一开始想的是 阅读全文
posted @ 2017-11-13 13:34 walfy 阅读(372) 评论(0) 推荐(0) 编辑