LeetCode 2402.会议室III ----堆+模拟

5e5 的st与ed 容易看出来是用堆来写的一道题目,一开始我只用了一个堆,出现了问题

问题就是当我们当前这个会议有多个可以选择的会议室可以选择的时候不一定选择那个最先结束的会议室而是应该选择可以选择的那些里面编号最小的那一个,因此我们应该加一个步骤,先把已经结束的可以选择的会议室先挑出来按照编号排序,如果可以选先这么选不能选的话我们再选结束时间最早的一个就可以了,比较丑的一个模拟 调试的过程中还是很锻炼人的

最后千万不要忘了开longlong

using ll = long long;
typedef pair<ll,ll>PII;
const int N = 110;
priority_queue<PII,vector<PII>,greater<PII>>heap;
vector<PII>vec;
int cnt[N];

class Solution {
public:
    int mostBooked(int n, vector<vector<int>>& meetings) {
        vec.clear();
        int m = meetings.size();
        memset(cnt,0,sizeof cnt);
        
        while(heap.size())heap.pop();
        
        for(auto&t:meetings)
           vec.push_back({t[0],t[1]});
        
        
        sort(vec.begin(),vec.end());
        
        for(int i=0;i<n;i++)heap.push({-1,i});
        
        for(int i = 0;i<m;i++){
           
            
            
            
           ll xuyao = vec[i].first;
            priority_queue<PII,vector<PII>,greater<PII>>heap1;
            
            while(heap.size()){
                auto t = heap.top();
                if(xuyao>t.first){
                    heap1.push({t.second,t.first});
                    heap.pop();
                }
                 
                else break;
            
                
            }
       
            if(heap1.size()){
                auto t = heap1.top();
                cnt[t.first]++;
                heap.push({vec[i].second-1,t.first});
                heap1.pop();
            }else{
                auto t = heap.top();
                ll jieshu = t.first;
                cnt[t.second]++;
                heap.pop();
                heap.push({jieshu+vec[i].second-vec[i].first,t.second});
            }
            
            while(heap1.size()){
               auto t = heap1.top();
               heap1.pop();
               heap.push({t.second,t.first});
            }
            
      
            
        }
        
        ll ans = 0,idx=0;
     
        for(int i=0;i<n;i++){
          if(cnt[i]>ans){
             ans = cnt[i];
             idx=  i;
          }
        }
        
        return idx;
        
        return 0;
    }
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/110983.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

我不允许你还不知道公众号菜单栏添加表情的两种方法

在做公众号的环节中&#xff0c;设置菜单栏也很重要&#xff0c;菜单栏可以增加交互性和用户体验的趣味性。表情符号可以使得公众号菜单栏更加生动有趣&#xff0c;吸引用户的注意力&#xff0c;提高用户的使用体验&#xff1b;提高用户辨识度&#xff0c;通过使用表情符号&…

笔记软件Notability mac中文版软件功能

Notability mac是一款帮助用户备注文件的得力工具&#xff0c;Notability Mac版可用于注释文稿、草拟想法、录制演讲、记录备注等。它将键入、手写、录音和照片结合在一起&#xff0c;便于您根据需要创建相应的备注。 Mac Notability mac中文版软件功能 将手写&#xff0c;照片…

3D RPG Course | Core 学习日记二:PolyBrush / Pro Builder构建场景

前言 我们这次将要学习的是使用PolyBrush和Pro Buillder构建精美的游戏场景。 PolyBrush 在Package Manager中导入的时候要注意&#xff0c;将Shader Examples(URP)也一起导入&#xff0c;不然PolyBrush对URP渲染的素材进行操作时会出现问题。 导入完成之后在Tools里将…

LDAP服务搭建,phpLDAPadmin+python管理服务

LDAP 是什么&#xff1f; LDAP&#xff08;Lightweight Directory Access Protocol&#xff09;是一种轻量级的目录访问协议。它最初是用于在 TCP/IP 网络上访问 X.500 目录服务&#xff0c;但由于其简单和高效的特点&#xff0c;现在广泛应用于企业、组织等系统中的身份验证、…

车载网关产品解析(附:车载网关详细应用案例及部署流程)

5G车载网关是一款功能强大的工业级无线通讯设备。它集成了4G/5G双模网络模块、M12接口设计、强大的路由和安全功能等特性,可以为车载和移动应用提供稳定可靠的无线数据连接。 链接直达&#xff1a;https://www.key-iot.com/iotlist/sv900.html ### 产品特性 5G车载网关最大的…

链游风暴再起?MBOX即将再度起飞

近期链游再次进入了我们的视野&#xff0c;Play To Earn在21年大放异彩之后经过了2年沉寂近期终于有了再度爆发的征兆&#xff0c;不管是前段时间爆拉7倍的YGG&#xff0c;还是近期一路高歌猛进的MC都已经吹响了链游板块即将冲锋的信号&#xff0c;那么近期还有哪些值得关注的链…

【PyQt学习篇 · ②】:QObject - 神奇的对象管理工具

文章目录 QObject介绍Object的继承结构测试QObject对象名称和属性QObject对象名称和属性的操作应用场景 QObject父子对象QObject父子对象的操作 QObject的信号与槽QObject的信号与槽的操作 QObject介绍 在PyQt中&#xff0c;QObject是Qt框架的核心对象之一。QObject是一个基类…

(a /b)*c的值

系列文章目录 进阶的卡莎C++_睡觉觉觉得的博客-CSDN博客数1的个数_睡觉觉觉得的博客-CSDN博客双精度浮点数的输入输出_睡觉觉觉得的博客-CSDN博客足球联赛积分_睡觉觉觉得的博客-CSDN博客大减价(一级)_睡觉觉觉得的博客-CSDN博客小写字母的判断_睡觉觉觉得的博客-CSDN博客纸币(…

从歌尔股份三季报中,读懂消费电子的“增程式”复苏

第三季度财报季前夕&#xff0c;消费电子板块可谓利好不断。 9月&#xff0c;苹果、华为纷纷发布新品&#xff0c;大厂高端机型带动购机热潮重现。同时&#xff0c;Meta推出的MR头显Quest3、智能眼镜Ray-Ban等XR新产品也备受消费者期待&#xff0c;大摩预测Quest 3今年出货量将…

MES 的价值点之动态调度

随着数字化技术的发展&#xff0c;为制造企业的生产计划提供了更多的便利。但在实际生产管理过程中&#xff0c;企业的生产计划不管做的多么理想&#xff0c;还是可能会因诸多的扰动因素造成执行与计划差异&#xff0c;这时就需要通过一些动态调整方案去适应新的生产要求与环境…

基于标签的电影推荐算法研究_张萌

&#xff12; 标签推荐算法计算过程 &#xff12;&#xff0e;&#xff11; 计算用户对标签的喜好程度 用户对一个标签的认可度可以使用二元关系来表示&#xff0c;这种关系只有“是”“否”两种结果&#xff0c;实际上难以准确地表达出用 户对物品的喜好程度。因此&#x…

通讯网关软件031——利用CommGate X2HTTP实现HTTP访问ODBC数据源

本文介绍利用CommGate X2HTTP实现HTTP访问ODBC数据源。CommGate X2HTTP是宁波科安网信开发的网关软件&#xff0c;软件可以登录到网信智汇(http://wangxinzhihui.com)下载。 【案例】如下图所示&#xff0c;实现上位机通过HTTP来获取ODBC数据源的数据。 【解决方案】设置网关机…

docker环境安装+maven依赖继承问题

1&#xff0c;docker环境安装 我们使用yum指令进行安装&#xff0c;分别cmd运行&#xff1a; yum install -y yum-utils device-mapper-persistent-data lvm2 yum-contig-manager --add-repo https://download.docker.com/linux/centos/docker-ce.rep具体解释如下&#xff1a;…

Java基于SpringBoot的线上考试系统

1 摘 要 基于 SpringBoot 的在线考试系统网站&#xff0c;功能模块具有课程管理、成绩管理、教师管理、学生管理、考试管理以及基本信息的管理等&#xff0c;通过将系统分为管理员、授课教师以及学生&#xff0c;从不同的身份角度来对用户提供便利&#xff0c;将科技与教学模式…

表白墙(服务器)

目录 0.需求 1.创建Maven项目 2.给pom.xml内引入三个依赖 3.完善目录&#xff0c;并补充web.xml中的内容 4.编写代码 后端代码 ​编辑前端代码 5.引入数据库 创建message表 创建工具类 往MessageServlet类中添加方法 0.需求 前面写好了表白墙页面&#xff0c;但存…

你知道HashMap有几种吗?不要只会用最简单的奥!

这秋意是越来越近了&#xff0c;这思念就开始泛滥… 在 Java 中&#xff0c;有多种哈希映射&#xff08;HashMap&#xff09;的实现&#xff0c;每种都有不同的特点和适用场景。以下是几种常见的哈希映射实现&#xff1a; HashMap&#xff1a; 介绍&#xff1a;HashMap 是 Java…

操作系统备考学习 day11 (4.1.1~4.1.9)

操作系统备考学习 day11 第四章 文件管理4.1文件系统基础4.1.1 文件的基本概念文件的属性文件的逻辑结构操作系统向上提供的功能文件如何存放在外存 4.1.2 文件的逻辑结构顺序文件索引文件索引顺序文件 4.1.3 文件目录文件控制块单级目录结构两级目录结构多级目录结构 又称树形…

【mysql】单表数据量过大解决方案

文章目录 背景问题方案数据库冷热数据分离方案 背景 包装码表单表数据量很大&#xff0c;造成查询瓶颈&#xff1b;目前单表数据量达到3000w&#xff0c;单表字段数16 问题 索引膨胀&#xff0c;查询耗时长&#xff0c;影响正常CRUD … 方案 ● 分区 按日期…范围&#x…

5000张照片怎么快速发给别人?分享三个简单的方法!

有的时候我们不得不一次性发送很多图片&#xff0c;一张一张发实在让人头疼&#xff0c;这个时候就需要借助一些图片压缩工具打包成文件压缩包发送。下面介绍了三种好用的方法&#xff0c;一起来看看吧&#xff5e; 方法一&#xff1a;使用微信助手 可以使用微信助手&#xff…

Python接口自动化测试—— requests框架

1.前言 Python内置的urllib模块&#xff0c;也可以用于访问网络资源。但是&#xff0c;它用起来比较麻烦&#xff0c;而且&#xff0c;缺少很多实用的高级功能。因此我们使用 requests 模块进行进行接口测试。 requests官方文档资料地址&#xff1a;http://cn.python-request…