01 2016 档案

CoderForce 141C-Queue (贪心+构造)
摘要:题目大意:一个队伍,每个人只记得前面比他高的人的个数x。现在将队伍散开,问能否构造出一支满足条件的队伍,如果能,再给每个人一个满足题意的身高。 题目分析:一个一个排,x越少越先排,如果x比已经排好的人数大,那么无解。否则,将这个人放到已经排好的队伍中的第x+1个位置上去,并赋予一个合适的身高,使得前 阅读全文

posted @ 2016-01-28 10:52 20143605 阅读(287) 评论(0) 推荐(0)

CoderForce 140C-New Year Snowmen(贪心)
摘要:题目大意:有n个已知半径的雪球。堆一个雪人需要三个尺寸不同的雪球,问用这些雪球最多能堆多少个雪人? 题目分析:先统计一下每种尺寸的球的个数,从三种最多的种类中各取出一个堆成雪人,这样贪心能保证的到的数目最多。 代码如下: # include<iostream> # include<map> # in 阅读全文

posted @ 2016-01-27 22:09 20143605 阅读(157) 评论(0) 推荐(0)

UVA-1663 Purifying Machine (最大匹配数)
摘要:题目大意:每一个01串中最多含有一个‘*’,‘*’既可表示0也可表示1,给出一些等长的这样的01串,问最少能用多少个这样的串表示出这些串。如:000、010、0*1表示000、010、001、011,最少只需用00*、01*这两个即可表示出来。题目分析:如果有两个串只有一个位置上的数字不同,就可以用... 阅读全文

posted @ 2016-01-18 19:53 20143605 阅读(502) 评论(0) 推荐(1)

UVA-10801 Lift Hopping (最短路)
摘要:题目大意及分析:一道简单的最短路。。。好几天没写程序了,憋得难受!!!代码如下:# include# include# include# include# include# includeusing namespace std;const int INF=1q; for(int i=0;id[... 阅读全文

posted @ 2016-01-16 00:39 20143605 阅读(182) 评论(0) 推荐(0)

UVA-1660 Cable TV Network (最小割)
摘要:题目大意:给一张n个点、m条边的无向图,求最小点割集的基数。题目分析:求无向图最小点割集的基数可以变成求最小割。考虑单源s单汇t的无向图,如果要求一个最小点集,使得去掉这个点集后图不再连通(连通分量数目增多),只需将每个点拆成两个(入点和出点),并且之间连一条容量为1的弧,其他弧不变,在新网络上求最... 阅读全文

posted @ 2016-01-09 22:36 20143605 阅读(474) 评论(0) 推荐(0)

UVA-820 Internet Bandwidth (最大流)
摘要:题目大意:单源单汇无向网络求最大流。题目分析:入门级别的题。但是ISAP在这儿好像不大好使?。。。代码如下:# include# include# include# include# include# includeusing namespace std;const int INF=1q; q... 阅读全文

posted @ 2016-01-09 15:44 20143605 阅读(274) 评论(0) 推荐(0)

UVA-1336 Fixing the Great Wall(区间DP)
摘要:题目大意:长城(视作x正半轴)有n处破损。有一个智能修复机器人,它的初始位置和移动速度已知。每处破损处都有一组参数(x,c,d),x表示位置,c、d表示在时间t后再修复该处破损的花费为d*t+c。求用一个机器人修复所有破损的最小花费。题目分析:要想最终代价最低,就不能跳跃着修复,也就是经过一段时间后... 阅读全文

posted @ 2016-01-07 23:12 20143605 阅读(663) 评论(0) 推荐(0)

棋盘分割(二维区间DP)
摘要:题目大意:给一个棋盘,棋盘上每个格子中都有一个值,现在需要将棋盘切成n个矩形,总共切n-1刀,求最小的均方差。均方差定义为:,其中。题目分析:将均方差化简得到:均方差2=(Σxi2)/n-平均值2。显然,平均值2是定值,为数字总和除以n。只需让矩形的和的平方和最小即可。先预处理出数组s(x1,y1,... 阅读全文

posted @ 2016-01-07 15:49 20143605 阅读(755) 评论(0) 推荐(0)

UVA-1515 Pool construction (最小割)
摘要:题目大意:有一块地,分成nxm块。有的块上长着草,有的块上是荒地。将任何一块长着草的块上的草拔掉都需要花费d个力气,往任何一块荒地上种上草都需要花费f个力气,在草和荒地之间架一个篱笆需要花费b个力气,如果一块草地四周都是荒地,则得花掉4b个力气。现在,要求最外一圈都种上草,草地与荒地之间要用篱笆隔开... 阅读全文

posted @ 2016-01-07 00:31 20143605 阅读(418) 评论(0) 推荐(0)

HDU-1794 方格填数 (贪心+四分)
摘要:题目大意:给一个由自然数构成的nxn方阵,其中有k个元素为0,现在要从给出的m个元素中挑出k个填入矩阵,是和的增量最大。和定义为所有子方阵上的元素之和。题目分析:对于尺寸固定的方阵,计算和的时候每个元素做加数的次数是可以求出的,只需将最大的数放入做加数次数最多的位置,以此类推,便得到答案。要预先处理... 阅读全文

posted @ 2016-01-03 00:26 20143605 阅读(309) 评论(0) 推荐(0)