贪心
Zhayan9QvQ
嘿嘿嘿
展开
-
【Bzoj1034】泡泡堂BNB
类似于田忌赛马的策略,最小的能赢就赢,最大的也是能赢就赢,如果都不满足就用最小的去换对方最大的,然后注意判等于。#include #include #define Rep(i,s,t) for(int i=s;i<=t;i++)using namespace std;const int maxx = 100000 + 25;int a[maxx],b[maxx];i原创 2017-03-19 11:33:34 · 479 阅读 · 0 评论 -
【Bzoj2151】种树
题意A城市有一个巨大的圆形广场,为了绿化环境和净化空气,市政府决定沿圆形广场外圈种一圈树。园林部门得到指令后,初步规划出n个种树的位置,顺时针编号1到n。并且每个位置都有一个美观度Ai,如果在这里种树就可以得到这Ai的美观度。但由于A城市土壤肥力欠佳,两棵树决不能种在相邻的位置(i号位置和i+1号位置叫相邻位置。值得注意的是1号和n号也算相邻位置!)。最终市政府给园林部门提供了m棵树苗并要求全部种上原创 2017-04-01 10:55:40 · 677 阅读 · 0 评论 -
区间
题意现给定n个闭区间[ai, bi],1请写一个程序:读入这些区间;计算满足给定条件的不相交闭区间;把这些区间按照升序输出。不知道为啥会刷这个,大概是改题。#include #include #define Rep( i , _begin , _end ) for(int i=(_begin);i<=(_end);i++)原创 2017-04-03 21:38:43 · 648 阅读 · 0 评论 -
【Bzoj1029】建筑抢修
题意给出n个需要抢修的建筑,每个建筑抢修需要t1时间,并且要在t2之前完成抢修,问在时间S内能抢修的建筑最多有多少个。解析贪心,首先按t2排序,能修则修。然后不能的话每当有建筑时判断,如果这个建筑需要用时比之前的短,就替换。#include <queue>#include <cstdio>#include <algorithm>#define Rep( i , _begin , _end ) f原创 2017-05-01 15:26:24 · 539 阅读 · 0 评论 -
【Bzoj4027】兔子与樱花
题意给一个n个结点的树,每个结点有最大载重m,上面有c[i]朵花,对于每个结点,它的儿子个数和花的朵数不能超过m。现在可以删掉一些结点,每删掉一个,它的花就会给父亲,求最多能删掉多少结点。解析树形Dp+贪心。 可以直接Dfs递归实现。 显然从权值小的开始删起。#include <cstdio>#include <vector>#include <algorithm>#define Rep(原创 2017-05-23 22:03:10 · 445 阅读 · 0 评论