贪心
文章平均质量分 54
chen_minghui
这个作者很懒,什么都没留下…
展开
-
poj 1017 packets (贪心)
装箱问题 问题描述 一个工厂制造的产品形状都是长方体,它们的高度都是h,长和宽都相等,一共有六个 型号,他们的长宽分别为 1*1, 2*2, 3*3, 4*4, 5*5, 6*6. 这些产品通常使用一个 6*6*h 的长方体包裹包装然后邮寄给客户。因为邮费很贵,所以工厂要想方设法的减小每个订单运送时的 包裹数量。他们很需要有一个好的程序帮他们原创 2017-01-25 13:23:31 · 247 阅读 · 0 评论 -
codeforces 777B - Game of Credit Cards 贪心
题意:有少于两个含有n位数得号码,其中一个是数n1,每一个位固定不变,另一个数n2位之间可以互换,但不能改变其大小。 求 1.使得n2每一个位上的数小于n1中每一个位上的数的数目最少,输出其数目 2.使得n2每一个位上的数大于n1中每一个位上的数的数目最多,输出其数目 思路:两序列升序排,从序列中找 #include #include using namespace std; int a原创 2017-05-23 22:04:30 · 320 阅读 · 0 评论 -
codeforces 798C - Mike and gcd problem 贪心
题意:如果一个序列B={b1,b2,b3,…,bn},其gcd(b1,b2,b3...bn)>1则称之为漂亮的。 现在给定一个长度为序列和一个操作,选定一个i(0,分别用ai-ai+1,ai+ai+1 代替原来的ai,ai+1。问最少操作几次,使得序列成为一个漂亮的序列(2 思路:贪心,一对奇数操作一次,即可变为偶数,一奇一偶要两个次。相邻两个都是奇数时,那么优先选择这两个数操作。原创 2017-05-24 10:57:11 · 243 阅读 · 0 评论 -
codeforces 810B - Summer sell-off 贪心
题意:有n天,每天最多可以卖的产品ki件,来购买产品的顾客li,每个顾客买一件,可以选定f天,使得可以(待)卖的产品数翻倍,问怎么安排使得卖的产品数最多,输出产品数。 思路:先从l和k中取小的,作为没有翻倍前卖的产品数 对任意一天如果 1。ki>=li则k翻倍没有效果,不会增加卖的产品数 2。ki 如果2*ki 如果2*ki>=li,则(卖出)产品数增加li-ki 只需将增加量从大到原创 2017-05-26 21:38:50 · 386 阅读 · 0 评论 -
codeforces 797C - Minimal string 贪心
题意:给定一个非空串s,和两个空串u,t。 可以进行一下两个操作 1.提取s首字符加到u 2.提取u端末尾字符到t。 求使得字符串t最小并输出 思路:首先预处理,计算出每种字符个数,然后从小到大开始,使得t的前端尽量小,用一个栈维护u端末尾字符,栈顶是u端末尾字符。 #include #include #include #include using namespace std; con原创 2017-05-28 13:50:42 · 287 阅读 · 0 评论 -
Codeforces 394 D. Dasha and Very Difficult Problem 贪心
题意:给定a数组,和一个代表c数组相对大小的p数组。c=b-a . a,b∈[l,r] .p∈[1,n] .数组长度都为n。若b数组存在,求b数组。 思路:按照p数组的大小排序,最大那个C=b-a,b的最大值为赋r .因为已经排序,可以让c之间相差1,总是去维护每个b可能的最大值,最大值都小于l无解。最大值超过r,将其赋为r。 #include #include #include #incl原创 2017-07-25 20:33:45 · 200 阅读 · 0 评论 -
codeforces 397div2 D Artsem and Saunders 贪心
题意:给一个数n,和一个数k。已知k是n进制的。但是k里面没有字母,比如A可能用10表示,求出k十进制的最小值。 思路:贪心:从低位开始,要让其在数中每个位的大小接近n,这样位数越小。得到的十进制值越小。 #include #include #include #include #include #include #include #include #include #include #defi原创 2017-07-26 14:02:17 · 208 阅读 · 0 评论 -
51nod 独木舟问题
题目:http://www.51nod.com/contest/problem.html#!problemId=1432 证明:http://blog.csdn.net/hfutxern/article/details/50654795 整天想着一些骚操作,才发现while已经不会用了=_= #include #include #include #include #include #incl原创 2017-07-29 09:43:31 · 190 阅读 · 0 评论 -
poj 2393 Yogurt factory
题意:一个酸奶公司有n周的生产计划,在第I周每生产一单位需要c_i成本,需要向客户交货y_i单位,公司有一个无穷大的仓库,并且酸奶可以存储任意时间不会腐化。没存一周一单位的酸奶需要s成本。问怎样安排生产与存储,使得n周的成本最小 网上的思路:总是使得当前周数生产成本最小,用for循环维护。 #include #include #include #define Min(a,b) a<b?a:b原创 2017-02-03 23:37:12 · 250 阅读 · 0 评论 -
POJ 3190 Stall Reservations
题意:有n头奶牛,每头奶牛都有它唯一的挤奶时间,并且同一台机器不能同时挤两头奶牛,问怎么安排挤奶,使用的机器最少 #include #include #include using namespace std; const int N = 50010; int pos[N];//记录i在哪个栏位 struct node { int left; int right; int id; bool原创 2017-02-03 23:27:46 · 226 阅读 · 0 评论 -
poj2376 Cleaning Shifts
题意:已知有n个区间,和一个数字t。要求用最少的区间数去覆盖[1,t]这个区间,如果不能完全覆盖,输出-1 按区间起点由大到小排序,每次都寻找覆盖的最广的区间来覆盖部分。 #include #include #define Max(a,b) a>b?a:b using namespace std; struct time { int start; int end; }data[25001]原创 2017-02-01 16:23:40 · 351 阅读 · 0 评论 -
poj 3262 Protecting the Flowers
题意:约翰留下他的N只奶牛上山采木.他离开的时候,她们像往常一样悠闲地在草场里吃草.可是,当他回来的时候,他看到了一幕惨剧:牛们正躲在他的花园里,啃食着他心爱的美丽花朵!为了使接下来花朵的损失最小,约翰赶紧采取行动,把牛们送回牛棚. 牛们从1到N编号.第i只牛所在的位置距离牛棚Ti(1≤Ti《2000000)分钟的路程,而在约翰开始送她回牛棚之前,她每分钟会啃食Di(1≤Di≤100)朵鲜花.无论原创 2017-01-31 20:13:14 · 247 阅读 · 0 评论 -
poj 1862 Stripies 优先队列 贪心
题意:一种微生物,他们可以两两融合,质量分别为m1,m2的两个生物,融合后的质量为2*sqrt(m1*m2).输入n个生物的质量,求出全部两两融合后的最小质量 看网上的思路是每个拿两个质量最大的融合,n个融合n-1次。 #include #include #include #include #include #include using namespace std; const int N =原创 2017-01-27 12:34:28 · 209 阅读 · 0 评论 -
POJ3253 Fence Repair (HDU 1263 搬水果)
做这题感觉智商受到打击,以为每次把最长那个排除,再累加。 priority_queue 优先队列,也可以用哈弗慢算法做 #include #include #include #include #include #include using namespace std; int f[20001]; int main() { priority_queue,greater > q; int N;原创 2017-01-25 09:35:59 · 341 阅读 · 0 评论