贪心
qq_38232157
这个作者很懒,什么都没留下…
展开
-
洛谷 P4053 [JSOI2007]建筑抢修(贪心)
贪心 网上老哥的思路: 先按从小到大排序,考虑每一个建筑能否在前修好。 如果可以,就将当前时间加上。 如果不行,就在所有修好的建筑中找到一个最大的,并与当前的作比较,如果当前更小则替换成当前的建筑。 用一个堆来维护即可。 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #include <queue> using namespace std;原创 2020-09-19 10:58:36 · 153 阅读 · 0 评论 -
HOJ 1789 Doing Homework again(贪心)
贪心: 题目意思: 有n门作业,每一门作业都有最后交作业日期 d 和 惩罚分数(不交或者延迟交就被扣分)。 学生一天只能做一门作业。问经过合理的安排,学生被罚的分数最少。 解题思路: 要求扣分最少,则将扣的分从大到小排序,先安排扣分最多的作业,如第i个课程,以该课程结束时间为初始点, 向前扫描,看它能安排到第几天(每个课程尽量在接近截止日期完成,贪心) #include <cstdio> #include <cstring> #include <iostream> #in原创 2020-08-01 16:27:22 · 81 阅读 · 0 评论 -
HOJ 2037 今年暑假不AC(贪心,水题)
贪心,水题 本题要点: 1、n个活动,按结束时间,从小到大排序 2、选择第一个活动,并删除与该活动冲突的活动。 3、重复第2步,直到活动为空。 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; const int MaxN = 110; int n; struct node { int st, ed; }rec原创 2020-08-01 11:32:12 · 80 阅读 · 0 评论 -
HOJ 2570 迷瘴(贪心,水题)
贪心,水题 本题要点: 1、药物按浓度从小到大排序: 如果当前的药物加入溶液中,总浓度小于 w的,就加入该溶液。否则,结束。 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; const int MaxN = 110; int T, n, v, w; int p[MaxN]; void solve() { in原创 2020-08-01 10:58:35 · 123 阅读 · 0 评论 -
洛谷 P1080 国王游戏(进阶指南,贪心, 高精度)
算法竞赛进阶指南,44页, 贪心, 高精度 本题要点: 1、 贪心: 按左右手的整数的乘积升序安排大臣; 2、 大数 bign 使用数组来存大数,涉及大数的乘法和除法: a) 大数 乘以 普通的数 bign multi(bign a, int b); b) 大数 除以 普通的数 bign divide(bign a, int b); c) 大数在数组中的存储,数的低位存在数组的低位,大数的高位存在数组的高位; #include <cstdio> #include <cstring&g原创 2020-05-30 01:27:35 · 155 阅读 · 0 评论 -
LA3177 Beijing Guards (训练指南,贪心, 二分)
题意: n个人围成一圈,第i个人想要ri个不同的礼物,相邻的两个人礼物类型不能重复。 每种礼物不限量,求最少需要多少种礼物才行(1<=n<=100000) 训练指南, 37页。 分类讨论,n为偶数和奇数时。 n为偶数情况, p = max{r[i] + r[i + 1]} (1 <= i <= n) //记 r[n + 1] = r[1] 本题要点: 1、贪心来分析奇数情况 对应第一人,需要礼物 r[1], 用 r[1] 将 所有礼物分为两部分, 1 ~ r[1] 和 r[1] +原创 2020-05-16 22:34:05 · 187 阅读 · 0 评论 -
poj 2054 Color a Tree (贪心)
题目意思: 一棵树,每个节点都有 权重值 c[i], 依次给各个节点染色,只能先染父亲节点,再染孩子节点。每一秒钟染一个节点。定义 染色的代价为, 所有节点的 c[i] * T[i] 和(T[i] 表示染第i节点的时间)。 求出,最小的代价。 1、贪心的证明: 树中,除了根节点外,2权值最大的点,一定会在父亲节点被染色之后,马上染色 2、假如有 x, y, z 三个节点,x 和y是连续操作, 先x, y,后z ==> 代价 x + 2y + 3z 先z后xy, 代价 z + 2x + 3y 相减,等到原创 2020-05-14 00:25:43 · 132 阅读 · 0 评论 -
poj 2709 Painter (贪心, 排序)
题目意思: 每个颜料盒可能有3-12种颜色,其中每种颜色50ml。任意三种颜色(假设每种颜色Xml)可以混合出Xml的灰色。 现在给出所需颜色的种数N,给出N个值分别代表每种颜色所需量,最后给出需要的灰色的量。 问最少需要多少个颜料盒可以得到上述的颜色。 注意:假设数据为:4 90 95 75 95 10。也就是需要颜色数为4(蕴含着你取得颜料盒中只有四种颜色, 而不是每个颜料盒都有12个颜色的),分别需要90,95,75,95,灰色需要10。 本题要点: 1、用贪心,先把其他颜料弄到满足需求,拿出剩余的的原创 2020-05-13 23:26:54 · 107 阅读 · 0 评论 -
POJ 2313 Sequence(贪心)
题目意思: 给出一个序列 a[n], 求 sum = |a[1] - b[1]| + …+ |a[n] - b[n]| + |b[1] - b[2]| + … + |b[n - 1] - b[n]| 的最小值。 其中,b[n] 是任意一个序列; 解答: 1、 贪心,参考别的老哥的思路 2、 初始化, b[i] = a[i](1 <= i <= n), 与b[i]发生关系的有三项 |a[...原创 2020-02-06 21:10:18 · 175 阅读 · 0 评论