贪心
文章平均质量分 61
程序设计竞赛中贪心相关知识
小飞猪Jay
远风知我意,微凉又深情。
展开
-
2589. 完成所有任务的最少时间
给你一个二维整数数组 tasks ,其中 tasks[i] = [starti, endi, durationi] 表示第 i 个任务需要在 闭区间 时间段 [starti, endi] 内运行 durationi 个整数时间点(但不需要连续)。输入:tasks = [[2,3,1],[4,5,1],[1,5,2]]输入:tasks = [[1,3,2],[2,5,3],[5,6,2]]当电脑需要运行任务时,你可以打开电脑,如果空闲时,你可以将电脑关闭。然后问所有时间点都选出之后,总的最少时间是多少?原创 2024-05-15 10:21:46 · 467 阅读 · 0 评论 -
1702. 修改后的最大二进制字符串
这道题有两种操作方式,一种是将00变成10,一种是将10变成01,求任意次操作之后可以得到的最大二进制的字符串。然后我们使用操作2,将两个位置之间的所有的1都移动到末尾,就变成了1000000000011111111111。然后再使用操作1,将所有连着的0都变为1,只保留最后一个0,1111111111011111111111。nononono,举个最简单的例子,010,我们就可以先用操作2变成001,再用操作1变成101。一个随便敲的字符串,首先确定01交互的位置,就是第一个0的位置到最后一个0的位置。原创 2024-04-10 09:22:44 · 263 阅读 · 0 评论 -
2952. 需要添加的硬币的最小数量
如果coins[i] ≤ x,说明当前这个硬币其实是多出来的,因为我们刚才已经说了,x指的是当前 [ 1 , x-1 ] 都是可以得到的,说明在遍历到coins[i]之前就已经可以得到[1 , x-1] ,那加了coins[i]后,可以得到的面值就变成了[1,x+coins[i]-1],所以x的值就更新为x+coins[i]。x是我们要加的面值从1开始,这里要注意的是,x不只是我们要加的硬币的数值,还指x以内的面值已经都可以得到了,即 [1,x-1]都可以得到。原创 2024-03-30 10:35:14 · 622 阅读 · 0 评论 -
游游的交换字符
游游的交换字符原创 2023-07-04 14:16:16 · 866 阅读 · 1 评论 -
1147. 段式回文
用双指针的思想,从前和从后两个方向进行移动和判断,当前面的词等于后面的词的时候,那说明当前长度是可以分割的,而且是前面分割一次,后面分割一次,这样就会使得 res += 2。如果还可以继续分割,就继续重复上述的步骤,然后最后判断res是否需要+1。解释:我们可以把字符串拆分成 “(ghi)(abcdef)(hello)(adam)(hello)(abcdef)(ghi)”。解释:我们可以把字符串拆分成 “(a)(nt)(a)(pre)(za)(tpe)(za)(pre)(a)(nt)(a)”。原创 2023-04-12 19:28:01 · 534 阅读 · 0 评论 -
贪心和动态规划的区别
举个很简单的例子,区别就显而易见了。你有1元、2元、5元的硬币各5枚,问付款26元所需的最少硬币数量。首先贪心怎么做呢?那当然是越贪越好。从五元的拿起,拿五个,然后是2元,最后1元,需要6个。那dp应该怎么做呢?写出状态转移方程:d[0]=0,d[i]=min(d[i],d[i-vj[j]]+1)可见,贪心是贪心解决子问题得到子问题的最优解,即最优子结构,最终结果=最优子结构+剩下子问题的最优解。而dp则要通过状态转移方程一步步的根据前一步状态的结果来得到当前状态的最优解。具体代码可见另一原创 2022-04-05 00:07:13 · 230 阅读 · 0 评论 -
codeforce B. Two Cakes
题意:两个人从左边第一个位置出发,从小到大依次取得1到n,问做过的最短距离是多少。思路:贪心问题。因为我们很容易分析到,当一个人走到一个数字之后,他会向下一个数字走去,但是有两个位置,他就要选择一个。这里我们考虑的是,两个人较小位置的应该走向下一个数的较小位置,较大位置的应该走向下一个数的较大位置,这样的每一步两个人都是最短距离,最后的路线和也是最短的。代码:#include<bi...原创 2020-04-08 21:09:33 · 173 阅读 · 0 评论 -
Saruman's Army(POJ3069)
DescriptionSaruman the White must lead his army along a straight path from Isengard to Helm’s Deep. To keep track of his forces, Saruman distributes seeing stones, known as palantirs, among the troop...原创 2019-10-22 10:47:37 · 251 阅读 · 0 评论 -
字典序最小问题(POJ3617)
题目大意:给定长度为N的字符串S,要构造一个长度为N的字符串T。起初,T是一个空串,随后反复进行下列任意操作。从S的头部删除一个字符,加到T的尾部从S的尾部删除一个字符,加到T的尾部目标是构造字典序尽可能小的字符串。输入:6ACDBCB输出ABCBCD解题思路:这道题我们很容易想到,不断取开头或者结尾最小的一个字母放到T中就可以了。这个思路是正确的,不过我们要针对开头和结尾相同...原创 2019-10-22 10:31:19 · 1110 阅读 · 0 评论 -
独木桥
题目背景战争已经进入到紧要时间。你是运输小队长,正在率领运输部队向前线运送物资。运输任务像做题一样的无聊。你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在桥下欣赏士兵们。士兵们十分愤怒,因为这座独木桥十分狭窄,只能容纳11个人通过。假如有22个人相向而行在桥上相遇,那么他们22个人将无妨绕过对方,只能有11个人回头下桥,让另一个人先通过。但是,可以有多个人同时呆在同一个位...原创 2019-09-19 20:10:53 · 246 阅读 · 0 评论 -
A公司的烦恼
A公司的计算机管理系统受到千年虫病毒的攻击,因此A公司丢失了向MS公司做年终回报的数据。A公司目前掌握的数据是MS公司每次公布的公司亏盈报表,而MS公司公布亏盈的方式与众不同,它么次都是将连续5个月的亏盈总和做一次性公布,因此A公司不知道每个月具体的亏盈状况。已知的情况是所有的盈利月的盈利固定为 s ,而亏损月的亏损固定为 d 。写一个程序,确定MS公司是否盈利,若盈利的话,计算可能的盈利最大...原创 2019-04-09 15:52:30 · 222 阅读 · 0 评论 -
Meteor
MeteorThe famous Korean internet company nhn has provided an internet-based photo service which allows The famous Korean internet company users to directly take a photo of an astronomical phenomenon ...原创 2019-03-31 02:10:41 · 602 阅读 · 0 评论