博客
关于我
洛谷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/

你可能感兴趣的文章
Mysql在离线安装时启动失败:mysql服务无法启动,服务没有报告任何错误
查看>>
Mysql在离线安装时提示:error: Found option without preceding group in config file
查看>>
MySQL基于SSL的主从复制
查看>>
Mysql基本操作
查看>>
mysql基本操作
查看>>
mysql基本知识点梳理和查询优化
查看>>
mysql基础
查看>>
Mysql基础 —— 数据基础操作
查看>>
mysql基础---mysql查询机制
查看>>
MySQL基础5
查看>>
MySQL基础day07_mysql集群实例-MySQL 5.6
查看>>
Mysql基础命令 —— 数据库、数据表操作
查看>>
Mysql基础命令 —— 系统操作命令
查看>>
MySQL基础学习总结
查看>>
mysql基础教程三 —常见函数
查看>>
mysql基础教程二
查看>>
mysql基础教程四 --连接查询
查看>>
MySQL基础知识:创建MySQL数据库和表
查看>>
MySQL基础系列—SQL分类之一
查看>>
MySQL处理千万级数据分页查询的优化方案
查看>>