博客
关于我
SSL大厅安排
阅读量:354 次
发布时间:2019-03-04

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

为了解决这个问题,我们需要找到一种方法来最大化演讲大厅的使用时间。演讲大厅需要通过选择一些预定而拒绝其他预定,以使演讲者使用时间最长。

方法思路

  • 问题分析:我们需要尽可能多地安排演讲,使得它们之间尽可能紧密地连续进行。这是一个典型的调度问题,可以使用贪心算法或动态规划来解决。
  • 排序演讲时间:将所有演讲按开始时间从早到晚排序,这样可以方便地找到可以连接的演讲。
  • 动态规划:使用动态规划来记录前i个演讲的最长时间段。对于每个演讲i,计算其与前面所有可能连接的演讲j的最长时间段,更新b[i]的值。
  • 计算最大时间:遍历所有演讲,计算每个演讲的最长时间段,并记录最终的最大时间。
  • 解决代码

    #include 
    #include
    #include
    #include
    #include
    using namespace std;struct f { int l, r;};bool cmp(f a, f b) { if (a.l != b.l) return a.l < b.l; return a.r < b.r;}int main() { int n, m = 0; cin >> n; struct f a[1001]; for (int i = 1; i <= n; ++i) { int l, r; cin >> l >> r; a[i] = {l, r}; } sort(a + 1, a + n + 1, cmp); int b[1001]; b[0] = 0; for (int i = 1; i <= n; ++i) { b[i] = a[i].r - a[i].l; for (int j = 1; j < i; ++j) { if (a[j].r <= a[i].l) { if (b[j] + (a[i].r - a[i].l) > b[i]) { b[i] = b[j] + (a[i].r - a[i].l); } } } if (b[i] > m) m = b[i]; } cout << m << endl; return 0;}

    代码解释

  • 输入处理:读取输入的演讲时间,存储在结构体数组中。
  • 排序:使用自定义比较函数按开始时间排序演讲时间段。
  • 动态规划计算:初始化b数组,遍历每个演讲,计算其与前面所有可能连接的演讲的最长时间段。
  • 结果输出:输出最大使用时间。
  • 这个方法通过动态规划有效地解决了演讲调度问题,确保了演讲大厅的最大化使用时间。

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

    你可能感兴趣的文章
    Nginx配置代理解决本地html进行ajax请求接口跨域问题
    查看>>
    nginx配置全解
    查看>>
    Nginx配置参数中文说明
    查看>>
    nginx配置域名和ip同时访问、开放多端口
    查看>>
    Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
    查看>>
    Nginx配置如何一键生成
    查看>>
    Nginx配置实例-负载均衡实例:平均访问多台服务器
    查看>>
    Nginx配置文件nginx.conf中文详解(总结)
    查看>>
    Nginx配置负载均衡到后台网关集群
    查看>>
    ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
    查看>>
    NHibernate学习[1]
    查看>>
    NHibernate异常:No persister for的解决办法
    查看>>
    NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
    查看>>
    NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
    查看>>
    NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现数据实时delete同步_实际操作04---大数据之Nifi工作笔记0043
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_实现数据插入数据到目标数据库_实际操作03---大数据之Nifi工作笔记0042
    查看>>
    NIFI从MySql中离线读取数据再导入到MySql中_03_来吧用NIFI实现_数据分页获取功能---大数据之Nifi工作笔记0038
    查看>>
    NIFI从PostGresql中离线读取数据再导入到MySql中_带有数据分页获取功能_不带分页不能用_NIFI资料太少了---大数据之Nifi工作笔记0039
    查看>>