ICPC 2018 亚洲横滨赛 C Emergency Evacuation(暴力,贪心)
2024-08-31 01:48:02
ICPC 2018 亚洲横滨赛 C Emergency Evacuation
题目大意
你一个车厢和一些人,这些人都坐在座位上,求这些人全部出去的时间最小值
Solution
题目咋说就咋做
直接模拟
我们考虑每个人的路线,如果这两个人在没有阻挡的情况下,到达终点的时间是一样的话,那么必定会在某一点相遇。
此时就需要有一个人要等一个时刻,如果有第三个人的话,这第三个就要等两个时刻,那么我们直接算出每个人到终点的时间,排序后依次后延即可。
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
struct node{
int r, c;
int d;
}pe[500005];
bool cmp(node a, node b){
return a.d > b.d;
}
int main(){
int r, s, p, i;
cin >> r >> s >> p;
for(i = 0; i < p; i++){
cin >> pe[i].r >> pe[i].c;
if(pe[i].c > s)
pe[i].d = (pe[i].c - s) + (r - pe[i].r + 1);
else
pe[i].d = (s - pe[i].c + 1) + (r - pe[i].r + 1);
}
sort(pe, pe + p, cmp);
int k = 1;
int ans = pe[0].d;
for(i = 1; i < p; i++){
if(pe[i].d + k > ans)
ans = pe[i].d + k;
k++;
}
cout << ans << endl;
return 0;
}
最新文章
- 【Java并发系列04】线程锁synchronized和Lock和volatile和Condition
- redis配置文件redis.conf中文版(基于2.4)
- pymssql examples
- MyBatis操作指南-搭建项目基础环境(基于XML)含log4j配置
- Java框架篇---Mybatis 构建SqlSessionFactory
- ubuntu14.04源代码安装postgresql 9.1
- poj 3662 Telephone Lines(好题!!!二分搜索+dijkstra)
- iOS 关于tableView中有多个textField,输入框被遮住的解决方法
- 向网页中写入js和css
- 一篇非常适合git入门的文章
- 算法模板——Dinic网络最大流 1
- 怎么解决dede首页网址自动加上index.html
- 微信公众平台开发者中心服务器配置Token验证失败问题
- 简单了解python使用正则表达式
- CSS绝对定位的原点:是在border上、padding上还是在content上?
- (PMP)第11章-----项目风险管理
- .8-浅析webpack源码之Tapable介绍
- Redis分布式锁实现简单秒杀功能
- Qt 文档编辑设置
- uestc Another LCIS