活动选择

D14554. 活动选择

时间限制1.0s   内存限制256.0MB   代码提交间隔1分钟(现在可以提交)  

输入文件名:test.in   输出文件名:test.out

问题描述

  假设有一个需要使用某一资源的n个活动组成的集合S,S={1,…,n}。该资源一次只能被一个活动所占用,每一个活动有一个开始时间bi和结束时间ei(bi<=ei)。若bi>ej或者bj>ei,则活动兼容。
  你的任务是:选择由互相兼容的活动组成的最大集合中元素的个数。

输入格式

  共n+1行,其中第1行为n,第2行到第n+1行表示n个活动的开始时间和结束时间(中间用空格隔开),格式为:
  n
  b1 e1
  ……
  bn en
  (注:所有数据不超过整型)

输出格式

  一个整数,表示可以兼容活动的最大个数。

样例输入

11
3 5
1 4
12 14
8 12
0 6
8 11
6 10
5 7
3 8
5 9
2 13

样例输出

4

 

思路:

各个区间不能重叠。

贪心策略:

按照结束时间排序,记录当前最后结束时间,判断第i区间是否可以选中,若可以修改最大结束时间的值,ans+1,反之不理它。

证明:

当前有第一个区间和第i个区间,如若两者不冲突,都可以选中,自然能多选,反之第一个区间结束时间更早,影响后续选择的可能就小,如此必选靠前的区间。
实现时使用pair定义结构体,排序时可以默认优先级。

Code:

#include<bits/stdc++.h>#define e first#define b secondusing namespace std;int n, ans = 0;pair <int, int> act[100010];int main(){freopen("test.in","r",stdin);freopen("test.out","w",stdout);cin >> n;for (int i = 1; i <= n; i++)cin >> act[i].b >> act[i].e;sort(act + 1, act + n + 1);int last = 0;for (int i = 1; i <= n; i++) {if (act[i].b > last) {ans++;last = act[i].e;}/冲突性判断}cout << ans << endl;return 0;}

 

转载于:https://www.cnblogs.com/sun915/p/9494077.html

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎样安装联想慧盾

1.如果是刚买的新计算机里面什么都没有&#xff0c;必须要有联想慧盾盘&#xff0e;&#xff12;.在启动时&#xff0c;按&#xff26;&#xff14;键进行安装&#xff0c;按F10键进行卸载&#xff0e;&#xff13;.联想慧盾安装过程&#xff1a;T1 200000G NTFS 902(暂…

我爸开车撞人

国庆收假回来的最后一天&#xff0c;我哥给我发消息&#xff0c;给我发了个视频&#xff0c;里面里面有一辆救护车&#xff0c;救护车在呼呼呼的发出声音。然后我以为是我哥出了什么事&#xff0c;就打电话过去&#xff0c;我哥着急的说&#xff0c;是爸妈开车撞人了。之后我打…

Adobe CTO:Android将超预期获50%份额

Adobe首席技术官凯文•林奇近日在《财富》杂志的采访中表达了他对Android操作系统的看法和期望。按照官凯文•林奇的预测&#xff0c;Android将超过业界的预期&#xff0c;在未来半年内将其智能手机份额提升至50%。Adobe凯文•林奇表示&#xff0c;苹果iPhone和黑莓手机的市场份…

女士怎么就不适合PhP呢,女人可以不美丽,但不能不智慧

相信世界上的所有30女人都有一个梦想&#xff0c;那就是希望自己能够有“闭月羞花&#xff0c;沉鱼落雁”的容貌。可是&#xff0c;上天不会将这倾国倾城的美貌平均分到每一个女人身上&#xff0c;而且&#xff0c;假如世界上所有30女人都拥有同样出众的容貌&#xff0c;也就没…

898 C. Phone Numbers

传送门 [http://codeforces.com/contest/898/problem/C] 题意 题意比较难理解直接看样例就知道了&#xff0c;给你个n接下来n行&#xff0c;每行包括一个名字和号码的数量&#xff0c;还有具体的每个号码 让你整理他的电话本&#xff0c;使得一个人的号码不能有重复&#xff0c…

嵌入式行业需要什么样的技术人才?

关注「嵌入式大杂烩」&#xff0c;选择「星标公众号」一起进步&#xff01;来源 | 巧学模电数电单片机嵌入式行业需要什么样的技术人才&#xff1f;仔细观察各种招聘的岗位要求吧&#xff0c;无非是两方面。1&#xff09;通用要求比如什么学历&#xff0c;多少年工作经验&#…

oracle临时表空间地址,Oracle认证:详解OracleTemp临时表空间处理方法

临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间&#xff0c;当运算完成之后系统会自动清理。当oracle里需要用到sort的时候&#xff0c;PGA中sort_area_size大小不够时&#xff0c;将会把数据放入临时表空间里进行排序&#xff0c;同…

消除VIM光标闪烁

2019独角兽企业重金招聘Python工程师标准>>> VIM光标闪烁比较影响人读代码的心情&#xff0c;消除光标闪烁&#xff0c;在配置文件中写下set gcra:block-blinkon0 保存并重启VIM 即可消除光标闪烁。 转载于:https://my.oschina.net/tonyyang/blog/10240

java异常个人理解

废话不说先贴图 所有的异常和错误都继承与Throwable类&#xff0c;它的下面又分为两大子类。 1.Error(uncheck) Error,错误。它是java程序中不被捕获的错误&#xff0c;并且总是不被控制。 例如&#xff1a;OutOfMemoryError 2.Exception(check) Exception,异常。所有的异常类都…

华为专家助你1个月拿下物联网高工认证,首次提供全方位就业指导!

物联网职业方向主要包括研究型岗位、研发型岗位、技术型岗位和技能型岗位4类&#xff1a;技能型岗位&#xff1a;工作内容主要是系统部署实施、运维管理等技术支持服务。技术型岗位&#xff1a;工作内容主要是负责物联网系统规划、设计、集成、技术咨询。研发型岗位&#xff1a…

小型机oracle命令,Oracle小型机如何选型

Oracle小型机如何选型我们知道服务器在选型时具备以下五个原则&#xff1a;高性能、高可靠、高可扩展、安全性以及可管理性等。而实际上&#xff0c;不同的应用程序对服务器硬件的需求也有所不同。我们将针对Oracle目前的产品系列&#xff0c;分析其对不同应用系统的需求符合程…

linux 每日学一点《明明白白配置lilo启动引导器》

明明白白配置lilo启动引导器怎样配置好lilo文件?LILO 是Linux 自带的一个优秀的开机启动管理程序&#xff0c;它可以开机时启动Linux&#xff0c;PC/MS-DOS&#xff0c;DR DOS&#xff0c;OS/2&#xff0c;Windows 95&#xff0c;Windows NT&#xff0c;386BSD&#xff0c; SC…

openstack添加热添加硬盘并识别

假定在虚拟机当中添加了磁盘&#xff0c;但是虚拟机没有识别出来&#xff1b;如何识别出来 可以使用命令 echo - - - >/sys/class/scsi_host/host0/scan 使用后就可以识别出来了 ###增加两块硬盘 默认是不会识别 [rootcompute1 ~]# fdisk -l Disk /dev/sda: 53.7 GB, 536870…

php获取linux是几核的,linux下怎么查看机器cpu是几核的

linux下怎么查看机器cpu是几核的&#xff1f;linux下查看机器是cpu是几核的几个cpumore /proc/cpuinfo |grep "physical id"|uniq|wc -l每个cpu是几核(假设cpu配置相同)more /proc/cpuinfo |grep "physical id"|grep "0"|wc -lcat /proc/cpuinfo…

我的自学编程之路!

大家好&#xff0c;我是写代码的篮球球痴昨晚上打车回家&#xff0c;接我的滴滴司机是一个年纪比较大的大姐&#xff0c;她说她儿子毕业了&#xff0c;但是找不到好的工作&#xff0c;就报名参加了编程培训&#xff0c;培训费两万多。我就问&#xff0c;那谁给他学费&#xff0…

鹰眼拓扑锁定跟踪 网络管理一目了然

为什么要在网管软件中引入“鹰眼”的概念&#xff1f; 企业网管经常遇到的问题是&#xff1a;为什么业务人员访问生产系统&#xff08;例如ERP等&#xff09;速度非常慢&#xff0c;甚至无法访问&#xff1f;邮件系统无法使用&#xff1f;下载数据时总是无法连接&#xff…

读工作31年退休的同事离职信有感

大家好&#xff0c;我是写代码的篮球球痴&#xff0c;下面的文章是我的朋友痞子衡写的。大家好&#xff0c;我是痞子衡&#xff0c;是正经搞技术的痞子。今天痞子衡不讲技术&#xff0c;跟大家随便唠唠嗑。这周五&#xff0c;痞子衡收到了一位来自恩智浦深圳分公司同事的离职信…

winform执行oracle语句,C#中的Winform应用程序连接远程Oracle数据库的配置文件及SQL语句的写法...

远程连接Oracle数据库的配置文件及sql语句近期&#xff0c;应朋友的要求&#xff0c;用C#语言开发了一个winform应用程序&#xff0c;要求的是连接到远程的Oracle数据库&#xff0c;用惯了SQL Server的我突然有点懵&#xff0c;然后通过一个简单的笔记来记录下对应的坑。连接本…

Silverlight 计时器

代码 publicpartialclassMainPage : UserControl{inti 1;TextBlock myTextBlock;publicMainPage(){ InitializeComponent(); myTextBlock newTextBlock(); myTextBlock.Loaded this.StartTimer; myTextBlock.Margin newThickness(30); LayoutRoot.Children.Add(myTextBlock);}p…

这三个Offer,你怎么选?

前几天&#xff0c;有读者给我发信息&#xff0c;让我帮他看一下offer的选择&#xff1a;字节、腾讯天美、阿里云&#xff0c;随便一个都是羡煞旁人的offer&#xff0c;这家伙一下拿了三个&#xff0c;我都开始酸了起来。于是我让他总结一下面试过程中考察的知识点&#xff0c;…