7-3 列车调度 (25 分)

火车站的列车调度铁轨的结构如下图所示。

两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?

输入格式:

输入第一行给出一个整数N (2 ≤ N ≤10^​5​​ ),下一行给出从1到N的整数序号的一个重排列。数字间以空格分隔。

输出格式:

在一行中输出可以将输入的列车按序号递减的顺序调离所需要的最少的铁轨条数。

输入样例:

9
8 4 2 5 3 9 1 6 7

输出样例:

4

AC代码


#include<iostream>
using namespace std; int main()
{
long N,count=0;
cin>>N;
long id[N]={0,0}; for(long i=0;i<N;i++)
{
int num;
cin>>num; if(num>id[count-1]||count ==0)
{
count++;
id[count-1] = num; }
else{
int head=0,tail = count; while (head<=tail)
{
int mid = (head+tail)/2; if(num>id[mid]){
head = mid +1;
}
else{
tail = mid-1;
} }
id[head] = num; }
}
cout<<count;
return 0;
}

最新文章

  1. Android--Activity(活动)
  2. IOS Animation-CABasicAnimation、CAKeyframeAnimation详解&amp;区别&amp;联系
  3. 【转】Sql Server参数化查询之where in和like实现详解
  4. 关于当一个C#工程移植到另一台机子上(win7)上时,程序报错。dll没有被指定在Windows上运行,或者它包含错误。请尝试使用原始安装媒体重新安装程序。。。。。。
  5. Octopus系列之js公共函数
  6. 【原】RDD专题
  7. JSON如何序列图片
  8. eclipse配置tomcat加大内存的方法
  9. 如何在C++ Builder中使用OpenGL
  10. POI设置excel某列值为文本格式
  11. [WPF]本地化入门
  12. L1和L2正则
  13. 学习Maven POM
  14. IP通信基础学习第一周
  15. 成对使用new和delete,传值传引用
  16. 564. Find the Closest Palindrome
  17. Java从零开始学四十(反射简述一)
  18. Oracle学习笔记之四,SQL语言入门
  19. GPU硬件加速原理 /转
  20. (2) iOS开发之UI处理-UILabel篇

热门文章

  1. mmdetection3d安装
  2. 正则表达式re.compile()的使用
  3. p标签设置行数,超出部分用省略号隐藏
  4. 在VSCODE的终端运行Python时汉字乱码问题处理
  5. postman或浏览器可以访问,java不能访问的post请求,连接超时
  6. vvvvvv异步组件儿
  7. ORACLE 查看用户下表占用空间大小
  8. 构建一个自己的CocoaPods库
  9. centos-7部署kafka-v2.13.3.0.1集群
  10. wpBullet-20190604