
(*^▽^*)小白
美团外卖
乘风破浪
展开
-
poj3069(贪心)
题目题意:有n个点,给你一个R,要标记一些点,要求标记的点左右R距离内必须有被标记的点,且标记点数最小。求有多少点被标记。 题解:较为简单的贪心,直接枚举最左端点寻找R距离内的中心作为标记点然后再去找右端点,扫一遍就好了。 (小白上的题目,我的代码和小白代码都贴上。) 我的代码#include<cstdio>#include<algorithm>#include<cstring>usin原创 2017-09-26 16:42:41 · 262 阅读 · 0 评论 -
poj3253(贪心)
题目题解:用优先队列每次取最小的两个合并,记录一下。最后就是答案了。注意要用longlong (小白的代码好长。我觉得我的代码更简练) 代码:#include<cstdio>#include<algorithm>#include<cstring>#include<queue>using namespace std;#define ll long longpriority_queue<原创 2017-09-26 17:40:37 · 272 阅读 · 0 评论 -
poj2431(优先队列)
题目题目:一辆车要从一个城市到另一个城市,给你距离L和出发时的汽油总量P,路上里终点XiXi的的地方有加油站可以加YiYi汽油,问最少加几次油能到达终点,如果不能到达输出-1. 题解:将离终点距离转化为离起点距离,一直走,等汽油消耗完了之后再从前面走过的加油站中选取可加油量最大的一个,重复这样。用优先队列维护。#include<queue>#include<cstdio>#include<al原创 2017-09-29 11:34:21 · 247 阅读 · 0 评论 -
POJ3041(二分图匹配)
题意:在N*N的网格中有K个小行星,已知行星位置,然后依次消除一行或者一列的小行星,消除所有小行星需要多少次?题解:根据每一个行星的位置,(x,y),就将x,y+n之间建边,建边之后对应图为:这里的边代表是行星,这里左边的点是代表一行,右边的点代表一列,选择了u1则代表u1-v1和u1-v3的点全部被消除掉,那么问题就转换成了最小顶点覆盖。 最小顶点覆盖是NP问题,不过这是在二分图中,所以最小顶点原创 2017-10-12 21:23:06 · 295 阅读 · 0 评论 -
POJ3057(二分图匹配)
题意: 有一个X*Y的房间,‘X’代表墙壁,‘D’是门,‘.’代表人。这个房间着火了,人要跑出去,但是每一个时间点只有一个人可以从门出去。 问最后一个人逃出去的最短时间,如果不能逃出去,输出impossible。 题解: 对每个门进行bfs,算每个人到达这个门的时间,看在时间t内所有人能否逃出去。如果不能,时间t就+1.检验所有人能否逃出去就看时间与门的二元组与人所组成的二分图的最大匹配数与原创 2017-10-15 14:58:07 · 598 阅读 · 0 评论 -
POJ3169(差分约束系统)
题目差分约束系统: 对于一个不等式 a−b<=ca - b <= c,建立一条从b到a的权值为c的边,然后求最短路,得到最大值。 对于一个不等式 a−b>=ca - b >= c,建立一条从b到a的权值为c的边,然后求最长路,得到最小值。 如果有负环的话就无解。题解: 对于1-N的每一头牛都满足: a[i]−a[i+1]<=0a[i] - a[i+1] <= 0 对于关系好的牛来说:原创 2017-10-01 16:50:31 · 361 阅读 · 0 评论 -
CodeForces - 645C(最大化最小值问题 二分)
题意:农夫带着他的牛们离家出走了(为什么农夫一定要和牛联系在一起???),他们到了一个旅店,旅店房间状况通过一个01串告诉你,0代表空的,1代表被占了,问怎么安排住宿可以使牛离农夫的最远距离最小。题解:通过前缀和处理出某个位置之前的0的个数,然后二分枚举对于位置i的左右两边可以放置下所有牛的最小距离。然后输出最小的那个一个就可以了。没怎么接触过这种题,好像小白上面有,当初看小白的时候二分部...原创 2018-04-22 19:12:36 · 273 阅读 · 0 评论