博客
关于我
洛谷p1830 贪心 活动的安排
阅读量:377 次
发布时间:2019-03-05

本文共 560 字,大约阅读时间需要 1 分钟。

这是一道很经典的贪心问题。
我会在以后的博客中把有关贪心的博客整理到一起。
***1.***首先我们按照每个活动的结束时间把他进行排序。
在这里插入图片描述
**2.如上图我们已经排好序了。我们为什么要这样排呢?(我也不太明白)
2.1序排好了,具体算法咋写呢?
2.1.1
我们首先可以确定的是第一个我们一定要选,因为这样我们就可以更早的安排下一个活动了。
假如我们觉得选择二号活动(开始的时间晚且h活动时间短)的话我们结束的我们就会发现我们无
法选择三号,显然可以证明这种思路 (选择二号的思路)是错误的。
2.1.2
当我们选完第一个后,我们先按照
排好的顺序
依次选取开始时间与上一个活动不冲突的活动。然后第三个第四个同样。

3.代码来袭

#include
#include
using namespace std;struct Act{ int A,B;}tim[1000005];bool cmp(Act a,Act b){ return a.B
>N; for(int i=0; i
>tim[i].A>>tim[i].B; } sort(tim,tim+N,cmp); int tail=tim[0].B; for(int i=1; i

转载地址:http://jmtg.baihongyu.com/

你可能感兴趣的文章
mongodb定时备份数据库
查看>>
mppt算法详解-ChatGPT4o作答
查看>>
mpvue的使用(一)必要的开发环境
查看>>
MQ 重复消费如何解决?
查看>>
mqtt broker服务端
查看>>
MQTT 保留消息
查看>>
MQTT 持久会话与 Clean Session 详解
查看>>
MQTT工作笔记0007---剩余长度
查看>>
MQTT工作笔记0009---订阅主题和订阅确认
查看>>
Mqtt搭建代理服务器进行通信-浅析
查看>>
MS Edge浏览器“STATUS_INVALID_IMAGE_HASH“兼容性问题
查看>>
ms sql server 2008 sp2更新异常
查看>>
MS UC 2013-0-Prepare Tool
查看>>
MSBuild 教程(2)
查看>>
msbuild发布web应用程序
查看>>
MSB与LSB
查看>>
MSCRM调用外部JS文件
查看>>
MSCRM调用外部JS文件
查看>>
MSEdgeDriver (Chromium) 不适用于版本 >= 79.0.313 (Canary)
查看>>
MsEdgeTTS开源项目使用教程
查看>>