Time of Trial
题目大意:一个人想逃,一个人要阻止那个人逃跑 ,阻止者念每一个符咒的时间为b[i],逃跑者念每一个符咒的时间为a[i],逃跑者如果念完了第i个符咒,阻止者还没有念完或者刚好念完这第i个符咒,此时逃跑者就可以逃跑了。(每个人都不知道对方在念哪一个符咒)
队友给讲的解题思路:首先可以想到的是逃跑者用时最短念完的符咒是最危险的(他可能很快念完然后离开了),所以想到要先阻止对方耗时最少的,次少的,,,,最多的; 但是假如有可能你(阻止者)在念他用时最少的符咒,并且你的时间比他少,把这个符咒锁住了,他逃不了,可是如果他根本没念这个,他念的是别的,当你念完最少(或其他的)来念这个时,他用时较少已经念完他就可以逃跑了。可以发现你根本猜不了,所以你要找一个特定的念符咒的顺序,只要这个顺序可以把所有情况都阻止,那他就逃不了了。那么回到思考的最开始,我们依旧是从逃跑者耗时最少的开始,次少的,,,,以此念下去,把逃跑者当成一开始就在念第i个,我们算按我们的顺序到念完第i个点的时间是否比逃跑者少,如果是就可以阻止他从这个点离开,如果每一个点按我们的顺序都能阻止成功,那么就阻止成功了,一旦有一个没有阻止成功,逃跑者就可以逃跑
AC_Code
#include <iostream>
#include <cstdio>
#include <cstring>
#include <ctime>
#include <cmath>
#include <algorithm>
using namespace std;
typedef long long ll;
const int maxn=1e5+;
ll n;
struct node
{
ll a;
ll b;
}s[maxn]; bool cmp(struct node x, struct node y)
{
return x.a<y.a;
} int main()
{
ll i,sum=,flag=;
scanf("%lld",&n);
for(i=;i<n;i++)
{
scanf("%lld",&s[i].a);
}
for(i=;i<n;i++)
{
scanf("%lld",&s[i].b);
} sort(s,s+n,cmp); for(i=;i<n;i++)
{
sum += s[i].b;
if( sum<s[i].a )
{
flag++;
}
}
if( flag==n ) printf("Dire victory\n");
else printf("Redemption\n"); return ;
}
Time of Trial的更多相关文章
- Visual Studio 2012 trial version
Update: vs2012.5.iso http://download.microsoft.com/download/9/F/1/9F1DEA0F-97CC-4CC4-9B4D-0DB45B8261 ...
- myeclipse trial expired[转]
转自:http://blog.csdn.net/yuyuyuyuy/article/details/5878122 今天MyEclipse提示过期了,MyEclipse Trial Expired. ...
- (转)软件版本中的Alpha,Beta,RC,Trial是什么意思?
版本号:V(Version):即版本,通常用数字表示版本号.(如:EVEREST Ultimate v4.20.1188 Beta )Build:用数字或日期标示版本号的一种方式.(如:VeryCD ...
- 软件版本中的Alpha,Beta,RC,Trial是什么意思?
版本号: V(Version):即版本,通常用数字表示版本号.(如:EVEREST Ultimate v4.20.1188 Beta ) Build:用数字或日期标示版本号的一种方式.(如:VeryC ...
- BAYESIAN STATISTICS AND CLINICAL TRIAL CONCLUSIONS: WHY THE OPTIMSE STUDY SHOULD BE CONSIDERED POSITIVE(转)
Statistical approaches to randomised controlled trial analysis The statistical approach used in the ...
- PLSQL过期:Your trial period for PL/SQL Developer is over .If you want to continue using this software ,you must purchase the retail version.
PLSQL过期:Your trial period for PL/SQL Developer is over .If you want to continue using this software ...
- Remove menucool tooltip trial version
You use this crack on your own risk , i dont reserve any right on this script or what is going to af ...
- java.lang.RuntimeException: JPedal Trial has now expired
具体提示: java.lang.RuntimeException: JPedal Trial has now expired jpedal-server-trial.jar jar包过期了,jpeda ...
- DNGuard HVM Unpacker(3.71 trial support and x64 fixed)
DNGuard HVM Unpacker(3.71 trial support and x64 fixed) Gr8 news. Finally got the x64 crash fixed. DN ...
随机推荐
- Net实现钩子函数(Hook)以及通过SendMessage实现自动点击按钮和给文本框赋值
1.实现钩子函数 钩子(Hook)的实现需要三个主要的函数和一个委托 [DllImport("user32.dll", CharSet = CharSet.Auto, Callin ...
- 重新学习Spring2——IOC和AOP原理彻底搞懂
一.AOP 1 Spring AOP 的实现原理 是对OOP编程方式的一种补充.翻译过来为"面向切面编程". 1 AspectJ是静态代理的增强:所谓静态代理就是AOP框架会在便一 ...
- [转]Go语言string,int,int64 ,float之间类型转换方法
1 正文 (1)int转string s := strconv.Itoa(i) 等价于s := strconv.FormatInt(int64(i), 10) (2)int64转string i := ...
- 从客户端中检测到有潜在危险的 Request.QueryString 值
解决办法: 一.解决方法是在web.config的 里面加入<system.web> <pages validateRequest="false"/>< ...
- Android常用优秀开源框架整理
前言 AOSF:全称为Android Open Source Framework,即Android优秀开源框架汇总.包含:网络请求okhttp,图片下载glide,数据库greenDAO,链式框架Rx ...
- 精选SpringBoot八大开源项目:支付、秒杀、全文搜索等
前言 曾在自己的博客中写下这样一段话:有一种力量无人能抵挡,它永不言败生来倔强.有一种理想照亮了迷茫,在那写满荣耀的地方. 如今,虽然没有大理想抱负,但是却有自己的小计划.下面是这一年来,自己利用闲暇 ...
- oracle执行计划(一)----概述
(1)什么是执行计划SQL是一种傻瓜式语言,每一个条件就是一个需求,访问的顺序不同就形成了不同的执行计划.Oracle必须做出选择,一次只能有一种访问路径.一个访问路径就是一个执行计划. (2)执行计 ...
- 02-CSS常用样式
本篇主要介绍css的常用样式,以及网页布局相关知识.绝对定位和相对定位,盒子模型.css权重.以及css选择器: 绪论:CSS基本介绍 为了让网页元素的样式更加丰富,也为了让网页的内容和样式能拆分开, ...
- 27.centos7基础学习与积累-013-文件和目录的权限
从头开始积累centos7系统运用 大牛博客: https://blog.51cto.com/yangrong/p5 https://blog.oldboyedu.com/ 文件的权限 rw-r--r ...
- 监控服务zabbix部署
目录 1. zabbix介绍 2. zabbix特点 3. zabbix配置文件 4. 部署zabbix 4.1 zabbix服务端安装 4.2 zabbix服务端配置 4.3 zabbix服务端we ...