
贪心
西瓜不甜不甜不甜
这个作者很懒,什么都没留下…
展开
-
【POJ】1328 - Radar Installation
http://poj.org/problem?id=1328给定海岛个数、雷达半径以及各海岛坐标,求能覆盖所有海岛的最小雷达数。以岛屿为圆心,以d为半径画圆,若圆与x轴无交点则输出-1,若存在交点,则计算出岛屿与x轴的交点坐标分别记为rad[i].st与rad[i].ed。 按照rad[i].ed升序排列,从左到右找雷达。 例如此时rad[i].ed为当前的最右边,对于下一个岛屿j,若rad[j原创 2017-08-18 00:05:14 · 165 阅读 · 0 评论 -
【Codeforces】899 C. Dividing the numbers 贪心
http://codeforces.com/contest/899/problem/C1到N,分成两组,使得差的绝对值最小。输出绝对值,以及第一组数的数量和数据。#include <bits/stdc++.h>using namespace std;#define ll long longint main(){ int n; cin >> n...原创 2018-03-04 10:06:11 · 244 阅读 · 0 评论 -
【POJ】2393-Yogurt factory 贪心
http://poj.org/problem?id=2393一个酸奶制造厂,n个星期内,要提供y[i]单位的酸奶,第i周制造每单位酸奶的费用为c[i],储存室储存每单位酸奶1星期的费用为s。 求最低成本。 贪心。维护一个目前最优的代价c[i]=min(c[i-1]+s,c[i]),然后求和。#include <iostream>using namespace std;int n,s;int c原创 2017-10-31 11:04:09 · 281 阅读 · 0 评论 -
【POJ】2181-Jumping Cows 贪心
http://poj.org/problem?id=2181给n个数,找出一个子序列,其规则是:奇数位置+,偶数位置- 。 求这个子序列的最大值。直接贪心#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>using namespace std;int a[15原创 2017-10-31 10:43:08 · 356 阅读 · 0 评论 -
【POJ】3040 - Allowance 贪心
http://poj.org/problem?id=3040给奶牛发工资,每周至少 C 元。有面值V_i的硬币B_i个。 求最多能发几周?贪心。分三个阶段:(1)首先面额>=C的硬币直接发掉。(2)对硬币面额从大到小尽量凑到接近C,且不超过C。(3)按硬币面额从小到大尽量凑到接近C,允许大于C。重复(2)(3)直到没有解。#include <iostream>#include <cstdio>原创 2017-08-20 23:05:05 · 308 阅读 · 0 评论 -
【POJ】3045 - Cow Acrobats 贪心
http://poj.org/problem?id=3045N头牛叠罗汉,每头牛的力气是S_i,体重是W_i,倒下的风险D是身上的牛的体重和减去S_i,求D的最大值。力气越大、体重越重的牛放越下面。 然后一个一个算就好了。#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <queue原创 2017-08-25 22:33:32 · 207 阅读 · 0 评论 -
【POJ】2010 - Moo University - Financial Aid
http://poj.org/problem?id=2010一个大学,能够给N(奇数)个学生提供助学金,但该学校最多能提供助学金数额为F。现有C个学生可待选择,给定他们的成绩、所需助学金。 学校希望N个学生的成绩的中位数尽可能地大,求中位数的最大值。枚举中位数,从第 n/2+1~C-n/2个学生一个一个枚举出以其中的学生作为中位数所能确定的助学金的最小值,即让左边的n/2个学生与右边的n/2个学生转载 2017-08-21 22:38:33 · 196 阅读 · 0 评论 -
【POJ】2376 - Cleaning Shifts 贪心
http://poj.org/problem?id=2376给定N个小区间以及区间起点终点,求能用它们覆盖区间[1,T]的最小组合。从左往右,尽量选择长度最大的区间。首先对所有奶牛按照开始时间排序。然后更新起点=终点+1,搜索剩下的奶牛中能够覆盖这个起点同时终点最远的那一头,更新终点。#include <iostream>#include <cstdio>#include <cstring>#原创 2017-08-17 20:40:13 · 195 阅读 · 0 评论 -
【CodeForces】837C - Two Seals
http://codeforces.com/problemset/problem/837/C给定n,a,b,有n张海报,一张a*b的矩形纸张。现要把2张海报贴到这张a*b的纸上面,海报必须在纸内不能露出纸外 且两张海报不能重叠 问你这两张海报面积之和的最大值#include <iostream>#include <cstdio>#include <cstring>#include <cmath原创 2017-08-14 16:52:51 · 271 阅读 · 0 评论 -
【POJ】3614 - Sunscreen
http://poj.org/problem?id=3614C只奶牛晒太阳 ,每只奶牛能够忍受的阳光强度有一个最小值和一个最大值,太大晒伤了,太小没感觉。 而刚开始的阳光的强度非常大,奶牛都承受不住,然后奶牛就得涂抹防晒霜,防晒霜的作用是让阳光照在身上的阳光强度固定为某个值。 为了不让奶牛烫伤,又不会没有效果。 给出了L种防晒霜。每种防晒霜有自己的数量和固定的阳光强度。 每个奶牛只能抹一瓶防原创 2017-08-21 14:13:52 · 250 阅读 · 0 评论 -
【POJ】3262 - Protecting the Flowers
http://poj.org/problem?id=3262奶牛每分钟吃掉D朵花,赶走它需要T分钟(来回加倍)。 求最小损失花朵数量。优先赶走吃得多且走的慢的牛。#include<iostream> #include<algorithm> using namespace std;int N;long long sum[100010];long long ans=0;struct cow原创 2017-08-20 23:45:27 · 234 阅读 · 0 评论 -
【POJ】1862 - Stripies
http://poj.org/problem?id=1862从N个数任取两个数按2*sqrt(a*b)合成新数放回,求最后剩下的数的最小值。优先队列。 每次使用尽量大的数进行运算。#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <queue>#include <algorithm原创 2017-08-20 23:26:01 · 189 阅读 · 0 评论 -
【POJ】 1017 - Packets
http://poj.org/problem?id=1017有1*1到6*6的物体,求至少需要几个6*6的箱子装它们。贪心,先装大再装小。这个写的更清楚。 http://www.hankcs.com/program/cpp/poj-1017-packets.html#include <iostream>#include <cstdio>#include <cstring>#include <原创 2017-08-18 23:44:41 · 242 阅读 · 0 评论 -
【POJ】2393 - Yogurt factory
http://poj.org/problem?id=2393奶牛建了一家酸奶厂,共有n周,每周卖y_i分酸奶,第i周成本为c_i,储存成本为每周Y元。求总最低成本。把储存成本也算进成本中计算。#include <iostream>using namespace std;int n,s;int c[10005];int y[10005];long long ans=0;int main(){原创 2017-08-18 23:27:47 · 198 阅读 · 0 评论 -
【POJ】3190 - Stall Reservations
http://poj.org/problem?id=3190n头奶牛要在指定的时间内挤牛奶,一台机器只能对一个奶牛工作。给定每头奶牛的开始时间和结束时间,问最少需要多少机器,并输出每只牛所在的机器序号。先按奶牛的开始时间从小到大排序,然后维护一个优先队列,以奶牛的结束时间小为优先。每次检查当前奶牛的开始时间是否大于堆顶牛奶的结束时间。若是,进入该机器挤奶。若否,增加一台新机器。#include <i原创 2017-08-18 22:01:26 · 216 阅读 · 0 评论 -
【2016 CCPC-Final】B - Wash
https://vjudge.net/problem/Gym-101206BL件衣服, n 个洗衣机, m 个烘干机, 给定每台洗衣机洗衣服的时间和每台烘干机烘干的时间, 每台机器一个时间段只能处理一件衣服。 求洗完L件衣服的最短时间?使用priority_queue 先使用优先队列算出第i件衣服洗完的最短时间, 若要使洗+烘干的总时间最短,则最晚洗完的衣服应放到最快的烘干机中, 按照该原则原创 2017-08-18 20:23:44 · 1100 阅读 · 0 评论 -
算法提高 快乐司机 贪心
http://lx.lanqiao.cn/problem.page?gpid=T321#include <bits/stdc++.h>using namespace std;const int maxn=10005;const int INF=0x3f3f3f3f;int n,m;struct Node{ int w; double v; bo...原创 2018-03-13 22:55:34 · 308 阅读 · 0 评论