首页 > 其他分享 >L2-014 列车调度

L2-014 列车调度

时间:2024-03-15 20:44:06浏览次数:23  
标签:count insert set int 调度 st flag L2 014

法一:(23分)
数组。有一个测试点会超时,每次第二层遍历是O(n)。

#include <bits/stdc++.h>
using namespace std;
int a[100010];
int main(){
	int n,t,count=0;
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>t;
		bool flag=false;
		for(int i=0;i<count;i++){
			if(a[i]>t){
				a[i]=t;
				flag=true;
				break;
			}
		}
        if(!flag){
        	a[count]=t;
        	count++;
		}
	} 
	cout<<count<<endl;
	return 0;
}

法二:(25分)stl相当于是遍历上节省了时间,lower_bound底层二分

#include <bits/stdc++.h>
using namespace std;
int main(){
	int n,t,count=0;
	cin>>n;
	set<int> st;
	set<int>::iterator it;
	for(int i=0;i<n;i++){
		cin>>t;
		if(st.empty()){
			st.insert(t);
		}else{
			it=st.lower_bound(t);
			if(it!=st.end()){
				st.erase(it);
				st.insert(t);
			}else{
				st.insert(t);
			}
		}
	}
	cout<<st.size()<<endl;
	return 0;
}

标签:count,insert,set,int,调度,st,flag,L2,014
From: https://www.cnblogs.com/chengyiyuki/p/18076212

相关文章

  • L2-013 红色警报
    判断图的连通性三种做法,dfs,bfs,并查集。本题dfs。edges为可达矩阵,若i能够到达j,则edges[i][j]=1且edges[j][i]=0反之为0,因为是无向图,所以两个都要存。一开始出了点问题,我在删除那个节点之后,将edges[i][j]置为0,但是没将edges[j][i]=0,郁闷半天...#include<bits/stdc++.h>usin......
  • EI期刊复现:面向配电网韧性提升的移动储能预布局与动态调度策略程序代码!
    适用平台:Matlab+Yalmip+Cplex/Gurobi/Mosek程序提出一种多源协同的两阶段配电网韧性提升策略。在灾前考虑光伏出力不确定性与网络重构,以移动储能配置成本与负荷削减风险成本最小为目标对储能的配置数量与位置进行预布局;在灾后通过多源协同运行与移动储能的动态调度最小化负荷......
  • L2-3 二叉搜索树的2层结点统计
    L2-3二叉搜索树的2层结点统计分数25作者陈越单位浙江大学二叉搜索树或者是一棵空树,或者是具有下列性质的二叉树:若它的左子树不空,则左子树上所有结点的值均小于或等于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;它的左、右子树也分别为二叉......
  • L2-007 家庭房产
    后面每个家族最小编号不知道怎么处理,就没做出来。然后去翻阅blog,发现差不多是两种方案,第一种在融合的时候让编号小的当根节点,那么最终这个家族的祖先就是编号最小的节点。第二种就是融合的时候没处理,到后面处理(看起来好麻烦)。下面就是第一种写法(注:结构体中的id没用,可以删了)。......
  • 【ARMv8】异常级别的定义EL0、EL1、EL2、EL3
    ExceptionlevelsARMv8-A系列定义了一系列的异常等级,从EL0到EL3,下面具体说明其含义:ELn中,随着n的增加,软件的执行权限也相应的增加;EL0被称为无特权执行;EL2提供了对虚拟化的支持EL3提供了安全状态切换功能(安全状态与非安装状态之间的切换)异常级别的切换在AARCH64状态下,异常......
  • L2-005 集合相似度
    法一(暴力超时21分)纯暴力,最后一个测试点超时。#include<bits/stdc++.h>usingnamespacestd;vector<set<int>>dataset;intmain(){ intn; cin>>n; dataset.resize(n+1);for(inti=1;i<=n;i++){ intcount,data; cin>>count; fo......
  • L2-003 月饼
    背包。#include<bits/stdc++.h>usingnamespacestd;structnode{ doublekc,sj; doubleavg;}s[1010];boolcmp(noden1,noden2){ returnn1.avg>n2.avg;}intmain(){ intn,total; cin>>n>>total; for(inti=0;i<n;i++){ cin>>......
  • 2.4GHz小型超高性能模块:LBEE5XV2EA-802、LBEE5PA1LD-005、LBES5PL2EL-923、LBWA0ZZ2DS
    1、描述:2EA型是一款基于CYW55573组合芯片组的小型超高性能模块,支持Wi-Fi802.11a/b/g/n/AC/ax2×2MIMO蓝牙5.3BR/EDR/le高达1.2Gbps的Wi-FiPHY数据速率和3Mbps的传统蓝牙PHY数据速率(EDR)以及2Mbps的PHY蓝牙LE数据速率。WLAN部分支持PCIe3.0第二代和SDIO3.0接口,蓝牙部分支持......
  • C# EPPlus导出dataset----Excel2绘制图像
    一、生成折线图方法 ///<summary>    ///生成折线图    ///</summary>    ///<paramname="worksheet">sheet页数据</param>    ///<paramname="colcount">总列数</param>    ///<paramname="......
  • L2-002 链表去重(25分)
    代码真的好烂啊。一个元素加入之前,修改集合中(va,vb)最后一个元素的下一个地址为当前元素的地址。然后我是把(元素地址,下一个地址)和(元素的值)拆开放到两个集合了,放一个里面有点麻烦不太会处理。#include<bits/stdc++.h>usingnamespacestd;intvis[10010];//是否已经来过ve......