PTA L2-014 列车调度

2024-03-17 16:44
文章标签 调度 l2 pta 014 列车

本文主要是介绍PTA L2-014 列车调度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

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

输入格式:

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

输出格式:

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

输入样例:

9
8 4 2 5 3 9 1 6 7

输出样例:

4

做法:

用set模拟轨道,set中的每个数都是对应轨道 排在最后面的列车。

最后set的大小就是所需轨道数。

代码:

#include <cstdio>
#include <set>using namespace std;const int N = 100010;int main()
{int n = 0;scanf("%d",&n);set<int> s;for(int i = 0; i<n;i++){int t = 0;scanf("%d",&t);if(s.size() && *(s.rbegin()) >= t) s.erase(s.lower_bound(t));s.insert(t);}printf("%d\n",s.size());
}

 结果:

这篇关于PTA L2-014 列车调度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/819524

相关文章

PTA基础题考点汇总

一:字符串(数组)的逆序,栈的方法 **字符串数组的逆序 : ** 标准容器库的知识:定义stack容器于字符串:stackv; string s; //这里用到了c++中stl(标准容器库的知识)stack;//用的时候要声明头文件;定义stack容器和string;stack<string>v; string s;了解几个函数,v.top( );//让最后一个元素出栈;(v是定义的

OSG学习:LOD、数据分页、动态调度

LOD(level of detail):是指根据物体模型的结点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。在OSG的场景结点组织结构中,专门提供了场景结点osg::LOD来表达不同的细节层次模型。其中,osg::LOD结点作为父节点,每个子节点作为一个细节层次,设置不同的视域,在不同的视域下显示相应的子节点。 数据分页:在城市

【FreeRTOS】任务管理与调度

文章目录 调度:总结 调度: 相同优先级的任务轮流运行最高优先级的任务先运行 可以得出结论如下: a 高优先级的任务在运行,未执行完,更低优先级的任务无法运行b 一旦高优先级任务就绪,它会马上运行(假设厨房着火了,会马上去灭火)c 如果最高优先级的任务有多个,他们轮流运行 他们都是使用链表进行管理 打开CubeMX,最高优先级56 56个List, Rad

算法学习014 0-1背包问题 c++动态规划算法实现 中小学算法思维学习 信奥算法解析

目录 C++0-1背包 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、运行结果 五、考点分析 六、推荐资料 C++0-1背包 一、题目要求 1、编程实现 有 N 件物品和一个容量为 M的背包,每件物品有各自的价值且只能被选择一次,要求在有限的背包容量下,装入的物品总价值最大。 2、输入输出 输入描述:第一行输入两个整数,分别表示

【完全复现】基于改进粒子群算法的微电网多目标优化调度(含matlab代码)

目录 主要内容      部分代码      结果一览    下载链接 主要内容    程序完全复现文献模型《基于改进粒子群算法的微电网多目标优化调度》,以微电网系统运行成本和环境保护成本为目标函数,建立了并网方式下的微网多目标优化调度模型,通过改进粒子群算法和原始粒子群算法进行对比,验证改进方法的优越性。虽然标题是多目标优化算法,实质指的是权值多目标,即通过不同目标权值相

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《含氢综合能源系统多目标最优折中分布鲁棒低碳调度》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源程序擅长文章解读,论文与完整源程序,等方面的知识,电网论文源程序关注python

算法导论 15.1动态规划 装配线调度

代码根据15.1中伪代码编写 #include<stdio.h>int e[3]={-1,2,4};int x[3]={-1,3,2};int n = 6;//a1[j]表示a(1,j),a2[j]表示a(2,j),以此类推,a1[0]不使用,设为-1 int a1[7]={-1,7,9,3,4,8,4};int a2[7]={-1,8,5,6,4,5,7};int t1[6]={-

pta 计算全班学生C++课程的总成绩和平均成绩 C++

7-1 计算全班学生C++课程的总成绩和平均成绩 分数 10 全屏浏览 作者 杨雪华 单位 沈阳师范大学 定义一个类Student,记录学生C++课程的成绩。要求使用静态数据成员或静态成员函数计算全班学生C++课程的总成绩和平均成绩。 输入格式: 输入5个不超过100的正整数,作为C++成绩。 输出格式: 在第一行中输出成绩的和,第二行输出平均成绩。 输入样例: 90 8

【linux】内核源码TCP->IP->L2层函数调用继续摸索中

日志打印的时候,把行数也打印了:   登录 - Gitee.comhttps://gitee.com/r77683962/linux-6.9.0/commit/b847489a9910f68b9581fd8788807c697c82cdbd 上回基于应用层wget操作找到TCP调用的一些接口,并且已经到IP层的一些接口,当前基于TCP的这根藤一直往下摸瓜,当前测试到L2层,但是不知道是不是正确

014.修改chromium源码-修改webGL指纹(二)

修改chromium源码-修改webGL指纹(二) 一、webGL指纹是什么 之前介绍过webGL指纹和常见网站绕过webGL指纹,插眼传送 二、为啥有的webGL指纹-二期 上期我们通过修改gl的参数,getSupportedExtensions()函数返回值列表的顺序,绕过部分网站的指纹检测。但还有些网站通过webGL生成图形来获取指纹,我们就需要再出一期了。还有就是:上期指纹检测未通