PAT (Advanced Level) 1095. Cars on Campus (30)
2024-09-01 08:43:25
模拟题。仔细一些即可。
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<map>
#include<queue>
#include<cstring>
#include<stack>
#include<vector>
#include<iostream>
using namespace std; int n,m;
struct Info
{
string id;
int time,f;
int quary;
}tmp[+],s[+]; string ans[+]; struct SJ
{
string id;
int time;
}sj[+]; bool cmp(const Info&a,const Info&b)
{
if(a.id==b.id) return a.time<b.time;
return a.id<b.id;
} bool cmp2(const Info&a,const Info&b)
{
if(a.time==b.time) return a.quary<b.quary;
return a.time<b.time;
} int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
{
cin>>tmp[i].id;
int hh,mm,ss; scanf("%d:%d:%d",&hh,&mm,&ss);
tmp[i].time=hh**+mm*+ss;
char op[]; scanf("%s",op);
if(op[]=='i') tmp[i].f=;
else tmp[i].f=;
tmp[i].quary=;
} sort(tmp+,tmp++n,cmp); int sz=,p=;
while()
{
if(p>n) break;
if(tmp[p].f==)
{
if(tmp[p+].f==&&tmp[p+].id==tmp[p].id)
{
s[sz++]=tmp[p];
s[sz++]=tmp[p+];
p=p+;
}
else p++;
}
else p++;
} int r=;
sj[r].id=s[].id;
sj[r].time=s[].time-s[].time;
for(int i=;i<sz;i=i+)
{
if(s[i].id==s[i-].id)
{
sj[r].time=sj[r].time+s[i+].time-s[i].time;
}
else
{
r++;
sj[r].id=s[i].id;
sj[r].time=s[i+].time-s[i].time;
}
}
r++; int Max=,u=;
for(int i=;i<r;i++) Max=max(Max,sj[i].time);
for(int i=;i<r;i++)
if(sj[i].time==Max)
ans[u++]=sj[i].id;
sort(ans,ans+u); for(int i=;i<m;i++)
{
int hh,mm,ss; scanf("%d:%d:%d",&hh,&mm,&ss);
s[sz].quary=;
s[sz++].time=hh**+mm*+ss;
} sort(s,s+sz,cmp2); int num=;
for(int i=;i<sz;i++)
{
if(s[i].quary==)
{
printf("%d\n",num);
}
else {
if(s[i].f==) num++;
else num--;
}
} sort(ans,ans+u);
for(int i=;i<u;i++)
{
cout<<ans[i];
printf(" ");
} int hh,mm,ss;
hh=Max/; Max=Max-hh*;
mm=Max/; Max=Max-mm*;
ss=Max; printf("%02d:%02d:%02d\n",hh,mm,ss); return ;
}
最新文章
- Solr入门之(8)中文分词器配置
- yarn 0.9.0 build spark
- Allegro建立引脚封装概念名词梳理
- 解决JS传参中文乱码
- Win7版IE10浏览器正式版官方下载地址
- CentOS 7.2 MySQL 5.7 主从配置
- iOS已发布应用中对异常信息捕获和处理
- ***总结:在linux下连接redis并进行命令行操作(设置redis密码)
- js一些小知识点
- Spark 贝叶斯分类算法
- C语言中处理结构体的原理
- 云+社区分享——腾讯云OCR文字识别
- System.Reflection名称空间下的程序集类Assembly应用.
- android 网络工具 之Android-Volley的demo
- 2.App Inventor 2编程流程
- Vue(服务端渲染)
- Blocking Cross Origin API request for /api/contents Creating Notebook Failed An error occurred while creating a new notebook.
- XIV Open Cup named after E.V. Pankratiev. GP of Europe
- day 25 二十五、抽象类、多态、鸭子、反射、异常处理
- post和get请求的参数乱码
热门文章
- go语法
- [NPOI2.0] 使用NPOI读取和导出Excel文件
- [原]创建三个输入文本框,当光标离开文本框的时候如果文本框为空,则将文本框背景色设置为红色,如果不为空则为白色。提示:焦点进入控件的事件是onfocus,焦点离开控件的事件是onblur
- oracle 存储过程(1)
- Qt错误:类中使用Q_OBJECT宏导致undefined reference to vtable for ";xxx::xxx";错误的原因和解决方法
- Linux系统手动安装rpm包依赖关系分析(以Kernel升级为例)
- boolean类型相关
- linux 备份 文件+sql
- phpstudy vhost 配置
- EntityFramework日志记录