当前位置:网站首页>leetcode-1833. 雪糕的最大数量(排序+贪心)
leetcode-1833. 雪糕的最大数量(排序+贪心)
2022-07-31 05:10:00 【lin钟一】

题目链接:https://leetcode.cn/problems/maximum-ice-cream-bars/
思路
直观想法
在给定的硬币情况下,花最小的钱,买最多的雪糕,一眼贪心。
吐槽一句:这题mid难度有点离谱,easy题差不多,经典贪心题
算法
- 对原雪糕价格 costs 数组进行小到大排序
- 遍历 costs 数组,当前的雪糕价格不超过硬币数,则购买,直接减去当前雪糕价格,不用关心怎么搭配买最多,只管当前他最便宜我就买,贪心!
代码示例
func maxIceCream(costs []int, coins int) (ans int) {
//go自带的排序x
sort.Ints(costs)
for i := range costs{
if coins - costs[i] < 0{
break
}
coins -= costs[i]
ans++
}
return
}

复杂度分析
- 时间复杂度:O(n logn) 其中n 是数组 costs 的长度,对数组排序所需要的时间是O(n logn),遍历数组需要O(n)的时间,以上时间取最长则是O(n logn)
- 空间复杂度:O(logn),其中 nn 是数组 costs 的长度。空间复杂度主要取决于排序使用的额外空间。
边栏推荐
猜你喜欢
随机推荐
精解四大集合框架:List 核心知识总结
实验8 DNS解析
Redis Advanced - Cache Issues: Consistency, Penetration, Penetration, Avalanche, Pollution, etc.
字符串的扩展
Paginate the list collection and display the data on the page
目标检测学习笔记
Distributed Transactions - Introduction to Distributed Transactions, Distributed Transaction Framework Seata (AT Mode, Tcc Mode, Tcc Vs AT), Distributed Transactions - MQ
Swordsman Offer Special Assault Edition ---- Day 6
【C语言3个基本结构详解——顺序、选择、循环】
C语言教程(三)-if和循环
数据库上机实验3 连接查询和分组查询
Element concatenation operations in numpy and pytorch: stack, concatenat, cat
With MVC, why DDD?
Interviewer: If the order is not paid within 30 minutes, it will be automatically canceled. How to do this?
剑指offer基础版 ---- 第26天
【MySQL8入门到精通】基础篇- Linux系统静默安装MySQL,跨版本升级
10 【高度塌陷与BFC】
第7章 网络层第1次练习题答案(第三版)
数据库学习笔记
leetcode-每日一题剑指 Offer II 041. 滑动窗口的平均值(队列模拟)









