Codeforces Round #380(div 2)
A、
题意:给你一串字符串(<=100),将ogo ogogo ogogogo ogogogogo……这种全部缩成***,输出缩后的字符串
分析:第一遍扫对于那些go的位置,记录下next[i]表示最远能扩展到的位置,第二遍扫只要看o即可,如果o后面的位置next存在,那么说明这一段全部缩为***,跳到next[i+1]+1继续下一段操作
B、= =
C、
题意:你将从0点开车到s点,路上有一些加油站,加油时间忽略不计。你有两种开车选择,一种是每km走1min,花费2L油,另一种是每km走2min,花费1L油。你有n种汽车可以选择,给出它们的油箱容量(刚开始满的)和价格,能否选择一辆价格最低的车,能在时间t内跑完全程?如果不能输出-1
分析:首先想到对所有汽车升序排序,对于那些容量小,价格高的车我们忽略,最后得到的汽车数组肯定两个属性都是升序的。
明显这个是满足单调性的,所以可以二分枚举选择哪辆车,然后就是判定的问题。
判定的时候注意每一段可以高速和低速交替,但都是对整数路段操作的,所以贪心着来,先把低速填满,然后根据剩余油量填高速,计算时间并判断是否合法。
O(klogn)
D、
题意:有长度为n的格子,有a个长度为b的船安放在其中,但是你看不见它们。每次操作可以射击一个格子,获取这个格子的信息(船的一部分?或者是空的?),给你已经射击的k个格子,问最多还需射击多少次才能射到船的一部分,并输出射击方案。
分析:先看所有连续的0的一段,假设船有无穷多个,统计需要射击的个数(即每b-1个0射一次),记为s,那么现在的问题就是s个可疑位置中有a个可能的船,那么我们只需要把剩下的s-a个位置封死即可。
E、
题意: 给出n个点,和它们的深度(深度有可能是错的),指定节点s为根节点(根节点的深度也有可能是错的,即输入的深度不是0), 求最少更改多少个点的深度可以使得其合法,n<=2e5
分析:合法的当且仅当深度是[0..len]每个数字全都有,且0只有一个。
将它们按照深度从小到大排序,枚举每一个i,将这个点作为最底层的点,将后面的点放到前面去(当然还有那些多余的0),计算操作数(当然要和前面断层的数量比较,如果数量不足则无法作为可能的结果),这样枚举一边就可以得到结果。
注意数据给你的s也有可能深度不是0,根据题意,这个点一定是根节点,所以只要把它改为0,操作数额外加1即可,不需要考虑更多复杂的东西……
Codeforces Round #380(div 2)的更多相关文章
- Codeforces Round #380 (Div. 1, Rated, Based on Technocup 2017 - Elimination Round 2)
http://codeforces.com/contest/737 A: 题目大意: 有n辆车,每辆车有一个价钱ci和油箱容量vi.在x轴上,起点为0,终点为s,中途有k个加油站,坐标分别是pi,到每 ...
- Codeforces Round #380 (Div. 2) 解题报告
第一次全程参加的CF比赛(虽然过了D题之后就开始干别的去了),人生第一次codeforces上分--(或许之前的比赛如果都参加全程也不会那么惨吧),终于回到了specialist的行列,感动~.虽然最 ...
- codeforces Codeforces Round #380 (Div. 1, Rated, Based on Technocup 2017 - Elimination Round 2)// 二分的题目硬生生想出来ON的算法
A. Road to Cinema 很明显满足二分性质的题目. 题意:某人在起点处,到终点的距离为s. 汽车租赁公司提供n中车型,每种车型有属性ci(租车费用),vi(油箱容量). 车子有两种前进方式 ...
- Codeforces Round #380 (Div. 2) 总结分享
B. Spotlights 题意 有n×m个格子的矩形舞台,每个格子里面可以安排一个演员或聚光灯,聚光灯仅可照射一个方向(俯视,上下左右).若聚光灯能照到演员,则称为"good positi ...
- Codeforces Round #380 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 2) E. Subordinates 贪心
E. Subordinates time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...
- Codeforces Round #380 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 2) D. Sea Battle 模拟
D. Sea Battle time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- Codeforces Round #380 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 2)C. Road to Cinema 二分
C. Road to Cinema time limit per test 1 second memory limit per test 256 megabytes input standard in ...
- Codeforces Round #380 (Div. 2)D. Sea Battle
D. Sea Battle time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- Codeforces Round #380 Div.2 F - Financiers Game
F - Financiers Game 这种两人博弈一般都可以用两个dp写, 一个dp描述第一个人的最优态, 第二个dp描述第二个人的最优态,难点在于优化空间... 我感觉这个空间开得有点玄学.. d ...
随机推荐
- js中cookie的添加,删除,查询总结
function addCookie(objName,objValue,objHours){//添加cookie var str = objName + "=" + escape( ...
- How To Restart timer service on all servers in farm
[array]$servers= Get-SPServer | ? {$_.Role -eq "Application"} $farm = Get-SPFarm foreach ( ...
- android对话框的EditText点击后不显示输入法的问题
dialog.show(); // 以下两行代码是对话框的EditText点击后不能显示输入法的 dialog.getWindow().clearFlags( WindowManager.Layout ...
- iOS 整理笔记 获取手机信息(UIDevice、NSBundle、NSLocale)
/* iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备.系统信息.应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发ap ...
- 【原】Github系列之三:开源iOS下 渐变颜色的进度条WGradientProgress
概述 今天我们来实现一个iOS平台上的进度条(progress bar or progress view).这种进度条比APPLE自带的更加漂亮,更加有“B格”.它拥有渐变的颜色,而且这种颜色是动态移 ...
- Java异常之自定义异常
哎呀,妈呀,又出异常了!俗话说:"代码虐我千百遍,我待代码如初恋". 小Alan最近一直在忙着工作,已经很久没有写写东西来加深自己的理解了,今天来跟大家聊聊Java异常.Java异 ...
- #研发解决方案#discache-分布式缓存查询与管理系统
郑昀 基于马海元和闫小波的文档 关键词:memcached.redis.分布式缓存.控制台.反序列化.Java 本文档适用人员:研发和运维员工 提纲: 如何查看缓存里的序列化数据? 批量删除来一个 监 ...
- this的作用--转载
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Linux命令学习总结:cd命令
命令简介: 该命令用来切换当前目录.cd 是change directory 的缩写 命令语法: cd [-L|-P] [dir] 使用示例 1:切换到当前目录的上一级目录 1: [root@DB-S ...
- SQL SERVER 2012 从Enterprise Evaluation Edtion 升级到 Standard Edtion SP1
案例背景:公司从意大利购买了一套中控系统,前期我也没有参与其中(包括安装.实施都是第三方),直到最近项目负责人告诉我:前期谈判以为是数据库的License费用包含在合同中,现在经过确认SQL Serv ...