题目链接

https://pintia.cn/problem-sets/994805046380707840/problems/994805063166312448

思路

其实这道题目很容易让人摸不着头脑求什么,意思就是我们要求最少的轨道数,而这个轨道上面可以摆放无线量车,但是车进轨道是有先后顺序的,我们最后只需要从我们分配的轨道中将这些车按照降序能从出口出去就是成立的轨道。

比如说这里我们分成四个轨道:

轨道1: 1 2 4 8
轨道2: 3 5
轨道3: 6 9
轨道4: 7

这样我们在车辆出去的时候就能通过先后顺序到达降序输出的效果,实际上也就是我们要划分递减子序列,我们可以通过贪心的去想,如果当前的这一辆车的编号比所有轨道中编号最小的车都大,那么这个车应该单独开一个轨道,否则的话我们就将当前的这个车放在最接近的一个编号的后面,那么这里需要注意,如果说我们在第一个轨道已经有了 888 ,当我们当前的这一辆车是 444 的时候这里的 888 其实就没有作用了,我们可以直接用 444 将其代替。最后只需要输出在这个集合中的元素个数即可,我们可以通过 set 来存储,也可以通过数组或者其他方式存储,每次寻找最接近的编号可以通过二分查找加快寻找速度

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define mod 1000000007
#define endl "\n"
#define PII pair<int,int>
#define INF 0x3f3f3f3fconst int N = 1e5+10;int n,a[N];int main()
{ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>n;set<int> S;for(int i = 1;i <= n; ++i) {cin>>a[i];auto it = S.lower_bound(a[i]);if(it == S.end()) S.insert(a[i]);else {S.erase(it);S.insert(a[i]);}}cout<<S.size()<<endl;return 0;
}

L2-014 列车调度(二分)相关推荐

  1. PTA 7-13 列车调度 (25 分) C语言和C++实现(二分查找)

    7-13 列车调度 (25 分) 火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一条 ...

  2. 天梯赛 L2 列车调度

    题目链接:点击打开链接 思路:二分 + 贪心.用一个数组保存当前每条铁轨的最后一个列车的编号(编号递增),每添加进来一个编号为num新列车,二分查找当前每个铁轨上最后一个列车的编号,且是满足小于num ...

  3. 7-55 列车调度 (25 分)

    7-55 列车调度 (25 分) 火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一条 ...

  4. 【CCCC】L2-014 列车调度 (25分),贪心,set维护序列

    problem L2-014 列车调度 (25分) 火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入 ...

  5. 列车调度(贪心):单机调度问题贪心算法

    单机调度问题贪心算法 #题目:火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一条轨道 ...

  6. PTA 一 列车调度

    火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一条轨道进入,最后从出口离开.在图中有 ...

  7. 5-10 列车调度 (25分)

    5-10 列车调度 (25分) 火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一条轨 ...

  8. 【PTA】5-10 列车调度 (25分)

    5-10 列车调度   (25分) 火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一 ...

  9. 5-10 列车调度 (25分) set OR 最长上升子序列

    5-10 列车调度 (25分) 火车站的列车调度铁轨的结构如下图所示. 两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道.每趟列车从入口可以选择任意一条轨 ...

  10. 天梯赛 L2-014 列车调度

    L2-014 列车调度 解析参考:PTA 7-13 列车调度(二分查找) 最初没有看出列末数字的有序性,做了模拟,超时21分 正确做法是二分 模拟代码: #include<bits/stdc++ ...

最新文章

  1. SAP S4HANA 账户组的配置里'Int.Std.Grping'选项没勾选导致ABAP程序报错
  2. 云效(原RDC)如何构建一个基于Maven的Java项目
  3. bzoj1951 组合数取模 中国剩余定理
  4. MySQL查询所有字段
  5. java redis 批量删除key_互联网大厂Java工程师面试指南——Redis篇
  6. mac php oracle11g,Oracle11G函数整理
  7. 唐山师范学院计算机二级报名,2017年3月唐山师范学院计算机等级考试报名时间(河北)...
  8. 4月数据库流行度排行出炉:MySQL 成事实王者
  9. 信息学奥赛一本通(1322:【例6.4】拦截导弹问题(Noip1999))
  10. 一文看尽 JVM GC 调优
  11. Python自动化二--jmeter分布式测试,抓包,python语法基本介绍
  12. 英语版计算机教室规章制度,计算机教室规章制度
  13. (82)Vivado系统同步接口约束
  14. 6010dn 华为 组网 胖ap_1、认识胖瘦AP以及组网场景
  15. 数据挖掘决策树python_机器学习之决策树ID3(python实现)
  16. 工业级无线路由器自助设备无线联网
  17. Spider_Man_5.2 の Mongodb_使用
  18. win7计算机属性资源管理器停止工作,Win7系统Windows资源管理器已停止工作怎么解决?...
  19. while循环语法结构
  20. 关于Android中RSA数字签名的理解及使用

热门文章

  1. 在Chrome离线安装插件时显示程序包无效: CRX_HEADER_INVALID
  2. ansible基本模块-server
  3. 用U盘制作EXSI启动盘
  4. POJ3261 Milk Patterns 【后缀数组】
  5. ffmpeg 将jpg转为yuv
  6. linux 自动登录
  7. 解决php保存文件时文件名乱码问题
  8. MySQL行级锁和表级锁
  9. 日本研发圆滚滚的球形无人机,被LED屏团团包围
  10. codevs——1044 拦截导弹(序列DP)