![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
贪心
文章平均质量分 80
算法,贪心专题
来老铁干了这碗代码
算法爱好者 终生学习践行者 雨雪刀霜阻不住 不成大神誓不休
展开
-
【解题报告】Leecode 807. 保持城市天际线——Leecode每日刷题系列
题目链接:https://leetcode-cn.com/problems/max-increase-to-keep-city-skyline/题解汇总:https://leetcode-cn.com/problems/max-increase-to-keep-city-skyline/题目描述在二维数组grid中,grid[i][j]代表位于某处的建筑物的高度。 我们被允许增加任何数量(不同建筑物的数量可能不同)的建筑物的高度。 高度 0 也被认为是建筑物。最后,从新数组的所有四个方向(即顶原创 2021-12-13 09:26:47 · 304 阅读 · 0 评论 -
【题意+分析】1067 Sort with Swap(0, i) (25 分)_24行代码AC
立志用最少的代码做最高效的表达PAT甲级最优题解——>传送门Given any permutation of the numbers {0, 1, 2,…, N−1}, it is easy to sort them in increasing order. But what if Swap(0, *) is the ONLY operation that is allowed to use? For example, to sort {4, 0, 2, 1, 3} we may apply原创 2021-02-27 20:31:48 · 480 阅读 · 0 评论 -
【详细解析】1033 To Fill or Not to Fill (25 分)
立志用最少的代码做最高效的表达PAT甲级最优题解——>传送门With highways available, driving a car from Hangzhou to any other city is easy. But since the tank capacity of a car is limited, we have to find gas stations on the way from time to time. Different gas station may give原创 2021-02-19 00:31:36 · 401 阅读 · 1 评论 -
设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是Li, 1<= i<= n。这n 个程序的读取概率分别是p1,p2,...,pn,且pi+p2+...+pn =
设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是Li, 1<= i<= n。这n 个程序的读取概率分别是p1,p2,…,pn,且pi+p2+…+pn = 1。如果将这n 个程序按 i1,i2,…,in 的次序存放,则读取程序ir 所需的时间tr=c*(Pi1Li2+Pi2Li2+…+Pir*Lir)。这n 个程序的平均读取 时间为t1+t2+…+tn。 磁带最优存储问题要求确定这n 个程序在磁带上的一个存储次序,使平均读取时间达到 最小。试设计一个解此问.原创 2020-12-21 13:53:43 · 4317 阅读 · 0 评论 -
【测试点2分析】:1020 月饼 (25分)(甲级 1070 Mooncake (25 分))
立志用更少的代码做更高效的表达Pat乙级最优化代码+题解+分析汇总——>传送门月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是卖出全部 15 万吨第 2原创 2020-11-28 21:25:07 · 1311 阅读 · 0 评论 -
假设你有一个数组,其中第i 个元素是第i天给定股票的价格。设计算法以找到最大利润。你可以根据需要完成尽可能多的交易(即,多次买入并卖出一股股票)。注意:您不能同时进行多笔交易(即,您必须在再次购买之前
假设你有一个数组,其中第i 个元素是第i天给定股票的价格。设计算法以找到最大利润。你可以根据需要完成尽可能多的交易(即,多次买入并卖出一股股票)。注意:您不能同时进行多笔交易(即,您必须在再次购买之前卖出股票) 例如: 给定数组[7,1,5,3,6,4],算法输出:7 说明:第二天买入(价格:1)第三天卖出(价格:5)利润:5-1=4,然后第四天买入(价格:3)并在第五天卖出(价格:6),利润6-3=3,总利润:4+3=7 要求给出测试案例,设计算法,并给出算法在你的测试案例上计算得到的原创 2020-11-26 15:15:24 · 1883 阅读 · 0 评论 -
Boxers CodeForces - 1203E (贪心解法)——26行代码AC
立志用更少的代码做更高效的表达There are n boxers, the weight of the i-th boxer is ai. Each of them can change the weight by no more than 1 before the competition (the weight cannot become equal to zero, that is, it must remain positive). Weight is always an integer nu原创 2020-11-18 20:19:49 · 902 阅读 · 2 评论 -
21行代码AC_HDU 5935 Car【贪心, 精度】
励志用更少的代码做更高效的表达Problem DescriptionRuins is driving a car to participating in a programming contest. As on a very tight schedule, he will drive the car without any slow down, so the speed of the car is non-decrease real number.Of course, his speeding原创 2020-10-18 16:27:52 · 617 阅读 · 0 评论 -
15行代码AC——ZOJ - 4118 Stones in the Bucket(思维题+优化方案)(第十届山东省ACM程序设计竞赛F题)
励志用少的代码做高效表达。思路分析题意:给定n个数,问最少操作几次,使数列中的数全部相等。操作一:将数列中任意数减一。操作二:将数列中任意数减一。任意数加一(相当于把1挪过去)涉及到最少的题,一定就是贪心了, 当然,本题考思维多一点,如果只是单纯的贪,会很麻烦。首先求出平均数n最开始的思路是:将>n的数的溢出值,挪给<n的数。 最后将多出来的数直接减掉。思路可行, 但这不是最优化的解法。想一想我们最终的目的:要求最后的值一样,因此可以这样简化:对>n的数的溢出部分累加原创 2020-08-30 14:36:33 · 705 阅读 · 0 评论 -
20行代码AC_ 习题8-1 Bin Packing UVA - 1149(贪心+简单二分解析)
励志用少的代码做高效表达题意给定N个物品的中联L1,背包的容量M,同时要求每个背包最多装两个物品,求至少要多少个背包才能装下所有的物品。解题过程第一次接触背包类问题。最初的思路是降序排序,i从最大值遍历,j从i后遍历,直到找到可以装在一个背包里的两个物体,若无,则把最大值单独装包。时间复杂度为O(n^2),超时且复杂。网搜后,发现更优化的思路是:升序排序,从i最小的值遍历,j从最大的值遍历,若二者和满足条件,则装包, 反之将较大值单独装包。于是我陷入了思考, 为什么只是将排序调整一下,时间复原创 2020-08-29 14:43:55 · 1460 阅读 · 0 评论 -
17行代码AC_51Nod - 2133 排队接水(贪心)
励志用少的代码做高效表达贪心算法模板题贪心算法简单来讲即自顶向下,求解出每个子最优解,且每个子问题不会对下一个问题产生影响题意:n个人排队接水,问如何排序才能使总等待时间最短,(正在接水的人和没有接水的人都需要等待)解法一、优先队列,接水时间越短越靠前。解法二、数组存储+algorithm头文件中的sort()升序排序,思路同上。algorithm头文件见我的这篇博客——>懒癌的福音_lgorithm头文件函数全集优先队列解法代码:#include<bits/stdc++.h原创 2020-08-28 18:16:13 · 781 阅读 · 0 评论 -
给我往死里贪——HRBUST - 1167-每种面值的货币要多少
Problem describe组织终于发工资了,等了好久的工资终于来了。。。为了让大家能在领工资的时候能尽量快,组织决定一次发完所有工资,不会出现让员工找零的情况,也就是说,如果一个员工的工资是1160元,就会给11张100元,1张50元,1张10元,而不会给员工1200元,然后让员工找40元零钱的情况。员工的工资都是整数,单位是元,并且市面上流通的RMB面值有100元,50元,20元,10元,5元,1元。要求最终需要的纸币张数最少。Input有多组测测试数据,每组测试数据占一行。对于.原创 2020-08-28 17:49:16 · 798 阅读 · 0 评论 -
给我往死里贪!——24行代码AC_今年暑假不AC HDU - 2037(贪心模板讲解)
励志用少的代码做高效表达思路分析:贪心算法模板题贪心算法简单来讲即自顶向下,求解出每个子最优解,且每个子问题不会对下一个问题产生影响该题算法模型为:1.若每次选取开始时间最早的节目,无法求出最优解2.若每次选取播放时间最短的节目,无法求出最优解3.若每次选取结束时间最短的节目,用数学归纳法可以求出最优解算法设计:1.采用结构体数组存放数据2.用冒泡排序法对 节目结束时间 进行升序排序3.遍历节目数组,找出每一个节目结束时间最早的节目,并且当前节目开始时间需大于等于上一个节目结束时间原创 2020-08-26 12:36:36 · 1047 阅读 · 0 评论