当前位置: 首页 > news >正文

贪心:Stall Reservations S(重写)

 题目:P2859 [USACO06FEB] Stall Reservations S - 洛谷

题目概述:每头奶牛都有自己的产奶时段(包括边界点),产奶时要单独呆在牛棚里。问至少需要多少牛棚?奶牛产奶时呆在哪个牛棚里?

思路:

怎么找?  

        找最早结束牛棚的那一个。如果奶牛的产奶时间,小于等于,最早结束牛棚产奶的那一头奶。说明需要新牛棚。

如果有多个牛棚怎么办?

        都可以用,但我们这里用最早结束的牛棚。

本节使用到优先级队列,与Cpp专栏《优先级队列》相关联,有语法部分。

重点讲语法部分:

    priority_queue<node> heap; 由于没有指定哪个做比较器,默认使用的是less做比较器,所以代码等价于 priority_queue<node, vector<node>, less<node>> heap;

        而less内部调用的是 operator< 。如果我们默认调用less,却选择内部调用operator> ,编译器会报错。

比较器的工作:

  • 如果返回 true,表示第一个参数比第二个参数“优先级低”,应该排在后面。
  • 如果返回 false,表示第一个参数比第二个参数“优先级高”,应该排在前面。

在这里,我们想将奶牛按r从小到大排序,如果大于,则优先级低,排在后面(小顶堆)。可以很好的完成任务。

代码解析:(图例)

主导项是排序和优先队列操作,时间复杂度为 O(n log n)。

我们可以总结得出,如果结构体数组有多个值,我们要把结构体数组排序,按结构体其中一个成员的大小进行比较,则可以考虑使用优先级队列。

http://www.dtcms.com/a/487081.html

相关文章:

  • 商城网站有免费建设的吗网站开发的主要内容
  • 泉州企业网站设计招商网站建设网
  • 数据库主从同步原理等信息
  • 广西网站建设公司招聘iapp制作软件
  • 人工智能简史(2)
  • 5 网站建设的基本步骤是申请公司邮箱
  • android 16kb 内存适配
  • 数据安全指南-合规治理 2025 等保2.0测评实施 全球数据保护法规对比 数据分类分级管理 ISO27001与SOC2认证 跨境数据传输合规
  • LongVU论文阅读
  • h5游戏免费下载:开心消消乐
  • 做暖暖网站网站建设公司的市场定位
  • (ACP广源盛)DD3118(S)---USB3.0读卡器,支持双卡单待模式,产品规格介绍
  • 特朗普的比特币战略对加密市场周期的影响:从矿业到 Meme 生态的传导机制
  • 江苏省城乡住房建设厅网站模板出售网站源码
  • 你们的LoRaWAN网关能传多远?
  • 腾讯有服务器如何做网站专业网站建设团队
  • 【K8S】学习(一) 基础概念
  • 网站建设公司广告 晴天娃娃政务网站建设建议
  • iOS八股文之 Runtime
  • Transformer ViT 架构(转载)
  • 算法学习 05
  • 注册网站空间邵阳 网站开发 招聘
  • 技术准备一:gflags
  • 高端个性化网站开发如何避免网站被攻击
  • 怎样创建网站或者网址网页设计的模板
  • 深圳网站定制建设网站推广运营
  • 力扣2401. 最长优雅子数组
  • 广州网站设计营销公司中国领导班子级别顺序图
  • 外贸网站建设石家庄烟台网络推广
  • ​HTTPS是如何确保安全的