题意:
输入两个正整数N和K(N<=1e4,K<=8e4),接着输入N行数据每行包括三个字符串表示车牌号,当前时间,进入或离开的状态。接着输入K次询问,输出当下停留在学校里的车辆数量。最后一行输出总计停留时间最长的车牌号(字典序升序输出)和停留总时。

AAAAAccepted code:

//因为一天只有86400秒,所以可以用一个car数组在统计车辆停留时间时在进入时间+1,离开时间-1。再用一个sum数组扫一遍,sum[i]=sum[i-1]+car[i],即可表示当下时间有多少辆车还在停留在校园内。

 #define HAVE_STRUCT_TIMESPEC
#include<bits/stdc++.h>
using namespace std;
map<string,int>mp;
vector<pair<string,int> >v[];
int sum[],car[];
int t[];
map<int,string>id;
vector<string>name;
int a[];
void clear(string&s){
string ss;
swap(s,ss);
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n,k;
cin>>n>>k;
int cnt=;
for(int i=;i<=n;++i){
string s;
cin>>s;
string t;
cin>>t;
string f;
cin>>f;
if(!mp[s])
mp[s]=++cnt;
id[mp[s]]=s;
int flag=;
if(f[]=='i')
flag=;
v[mp[s]].push_back({t,flag});
}
for(int i=;i<=cnt;++i){
sort(v[i].begin(),v[i].end());
string now;
int flag=;
for(int j=;j<v[i].size();++j){
if(v[i][j].second==){
now=v[i][j].first;
flag=;
}
else{
if(flag){
string tamp=v[i][j].first;
int start=(now[]-'')*+(now[]-'')*+(now[]-'')*+(now[]-'')*+(now[]-'')*+(now[]-'');
int over=(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'');
++car[start];
--car[over];
flag=;
clear(now);
t[i]+=over-start;
}
}
}
}
sum[]+=car[];
for(int i=;i<;++i)
sum[i]=sum[i-]+car[i];
for(int i=;i<=k;++i){
string tamp;
cin>>tamp;
int tt=(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'')*+(tamp[]-'');
cout<<sum[tt]<<"\n";
}
int mx=;
for(int i=;i<=cnt;++i)
mx=max(mx,t[i]);
for(int i=;i<=cnt;++i)
if(mx==t[i])
name.push_back(id[i]);
sort(name.begin(),name.end());
for(int i=;i<name.size();++i)
cout<<name[i]<<" ";
a[]=mx/;
mx%=;
a[]=mx/;
mx%=;
a[]=mx/;
mx%=;
a[]=mx/;
mx%=;
a[]=mx/;
mx%=;
a[]=mx;
cout<<a[]<<a[]<<":"<<a[]<<a[]<<":"<<a[]<<a[];
return ;
}

【PAT甲级】1095 Cars on Campus (30 分)的更多相关文章

  1. PAT甲级1095. Cars on Campus

    PAT甲级1095. Cars on Campus 题意: 浙江大学有6个校区和很多门.从每个门口,我们可以收集穿过大门的汽车的进/出时间和车牌号码.现在有了所有的信息,你应该在任何特定的时间点告诉在 ...

  2. PAT甲级——1095 Cars on Campus (排序、映射、字符串操作、题意理解)

    本文同步发布在CSDN:https://blog.csdn.net/weixin_44385565/article/details/93135047 1095 Cars on Campus (30 分 ...

  3. PAT甲级——1131 Subway Map (30 分)

    可以转到我的CSDN查看同样的文章https://blog.csdn.net/weixin_44385565/article/details/89003683 1131 Subway Map (30  ...

  4. PAT 甲级 1076 Forwards on Weibo (30分)(bfs较简单)

    1076 Forwards on Weibo (30分)   Weibo is known as the Chinese version of Twitter. One user on Weibo m ...

  5. PAT 甲级 1068 Find More Coins (30 分) (dp,01背包问题记录最佳选择方案)***

    1068 Find More Coins (30 分)   Eva loves to collect coins from all over the universe, including some ...

  6. PAT 甲级 1045 Favorite Color Stripe (30 分)(思维dp,最长有序子序列)

    1045 Favorite Color Stripe (30 分)   Eva is trying to make her own color stripe out of a given one. S ...

  7. PAT 甲级 1018 Public Bike Management (30 分)(dijstra+dfs,dfs记录路径,做了两天)

    1018 Public Bike Management (30 分)   There is a public bike service in Hangzhou City which provides ...

  8. PAT 甲级 1014 Waiting in Line (30 分)(queue的使用,模拟题,有个大坑)

    1014 Waiting in Line (30 分)   Suppose a bank has N windows open for service. There is a yellow line ...

  9. PAT (Advanced Level) Practise - 1095. Cars on Campus (30)

    http://www.patest.cn/contests/pat-a-practise/1095 Zhejiang University has 6 campuses and a lot of ga ...

随机推荐

  1. Unable to connect to a repository at URL

    缓存问题: 1. 右键点击本地副本,TortoiseSVN -> Settings -> Saved Data, 2.点击“Clear”按钮,把本地缓存都清除了,点击“确定”: 3. 再重 ...

  2. Python3标准库:string通用字符串操作

    1. string:通用字符串操作 string模块在很早的Python版本中就有了.以前这个模块中提供的很多函数已经移植为str对象的方法,不过这个模块仍保留了很多有用的常量和类来处理str对象. ...

  3. ERROR EPERM: operation not permitted, mkdir 'C:\Users\Administrator\Desktop\text\nuxt\basic\.nuxt\components'

    C:\Users\Administrator\Desktop\text\nuxt>cd basic C:\Users\Administrator\Desktop\text\nuxt\basic& ...

  4. 题解 【洛谷P4290】 [HAOI2008]玩具取名

    这道题很明显是区间DP. 为了方便表示,我们可以将'W'.'I'.'N'.'G'分别设为1.2.3.4. 另外,DP可能有点丑,记忆化搜索可能写起来更容易理解. AC代码: #include < ...

  5. JavaScript错误-throw、try和catch

    try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行. JavaS ...

  6. idea中使用Data Source and Drivers时,如果使用自己自定义的jar包

  7. win7搭建python环境--同时安装版本2和版本3

    软件准备[以win7 64位系统为例] python2.x版本建议使用2.7.9或更新版本,因为该版本开始集成了setuptools和pip,这样省去了不少功夫 python2.7.9下载地址: ht ...

  8. Tinyhttp源码分析

    简介 Tinyhttp是一个轻量型Http Server,使用C语言开发,全部代码只500多行,还包括一个简单Client. Tinyhttp程序的逻辑为:一个无线循环,一个请求,创建一个线程,之后线 ...

  9. docker里面安装sqlserver2017

    首先要注意,docker一般不做数据持久化容器.如果非要安装可以参考微软官方教程: https://docs.microsoft.com/zh-cn/sql/linux/quickstart-inst ...

  10. C# byte[]转string, string转byte[] 的四种方法

    转载:https://blog.csdn.net/tom_221x/article/details/71643015 第一种 string  str    = System.Text.Encoding ...