JAG Practice Contest for ACM-ICPC Asia Regional 2016
2016弱校联盟十一专场10.3
B. Help the Princess!
- 计算皇后和士兵谁先到达出口即可。
C. We don't wanna work!
- 两个优先队列维护工作中积极性最小的,空闲中积极性最高的。
- 两个队列倒来倒去就可以了。
D. Parentheses
- 考虑最坏情况)))...(((。
- 假设有\(x\)个右括号,那么这种情况需要\(\frac{x(x+1)}{2}\)次操作。
- 将第一个左括号移动每往左移动一个位置,则需要的操作次数减一,直到移动到最左边则变成\(x-1\)的子问题。
- 那么只要找到第一个\(x\)使得方案数大于等于\(n\)即可,根据差值移动第一个左括号。
E. Similarity of Subtrees
- hash
F. Escape from the Hell
- 除了最后一瓶饮料外,其余时候必然是喝\(A_i-B_i\)大的饮料喝。
- 首先按照\(A_i-B_i\)从大到小排序,假设喝到第\(i\)瓶,当前爬的高度为\(H\),罪犯的高度为\(C\),显然\(H \gt C\),否则直接结束了。
- 在当前情况下,可以喝\(i+1\cdots n\)中\(A_j\)最大的尝试一步跳上去,否则需要调整\(1\cdots i\)中\(A_j\)较大的一瓶放到当前喝,但是需要保证总体下降高度不会被罪犯抓到。
- 假设我们把\(j\)移动到最后,那么需要满足\[d_1+\cdots + d_{j-1} + d_{j + 1} +\cdots + d_k - c_1-c_2-\cdots - c_{k-1} \gt 0\]\(any\ k\in[j+1,i],d_i=A_i-B_i\)
- 整理下式子可得\[d_1+\cdots + d_k - c_1-\cdots - c_{k-1} \gt d_j\]
- 可以发现左边式子与\(j\)没有关系,所以对于任意的\(j\)来说,如果均满足式子说明位置\(j\)是可以往后移动的。
- 假设我们已经得到了在\(i-1\)的可移动位置,对于左边的式子新增了\[d_1+\cdots + d_i - c_1-\cdots - c_{i-1}\]也就是说我们只要把之前的可移动位置的\(d\)值与当前值比较即可,比较的顺序的肯定是从小到大,所以需要一个优先队列,然后用个线段树维护下最大\(A\)值(当然可以不用线段树,只是线段树的时间复杂度也够就随意写了)。
G. Share the Ruins Preservation
- 显然凸包会发生的变化的时候是在划分线在两个\(x\)坐标之间。
- 那么我们将划分线按照顺序扫过去,然后维护凸包。
- 但是,如果同时维护两个凸包显然很难,而维护一个凸包,就简单得多。
- 正向扫一遍,维护一个凸包的面积,反向再扫一遍,维护另一个凸包的面积,最后枚举下划分线的位置然后计算面积和即可。
- 维护凸包的做法,维护上凸壳和下凸壳及其面积。
JAG Practice Contest for ACM-ICPC Asia Regional 2016的更多相关文章
- hduoj 4710 Balls Rearrangement 2013 ACM/ICPC Asia Regional Online —— Warmup
http://acm.hdu.edu.cn/showproblem.php?pid=4710 Balls Rearrangement Time Limit: 6000/3000 MS (Java/Ot ...
- hduoj 4708 Rotation Lock Puzzle 2013 ACM/ICPC Asia Regional Online —— Warmup
http://acm.hdu.edu.cn/showproblem.php?pid=4708 Rotation Lock Puzzle Time Limit: 2000/1000 MS (Java/O ...
- hduoj 4715 Difference Between Primes 2013 ACM/ICPC Asia Regional Online —— Warmup
http://acm.hdu.edu.cn/showproblem.php?pid=4715 Difference Between Primes Time Limit: 2000/1000 MS (J ...
- hduoj 4712 Hamming Distance 2013 ACM/ICPC Asia Regional Online —— Warmup
http://acm.hdu.edu.cn/showproblem.php?pid=4712 Hamming Distance Time Limit: 6000/3000 MS (Java/Other ...
- hduoj 4706 Herding 2013 ACM/ICPC Asia Regional Online —— Warmup
hduoj 4706 Children's Day 2013 ACM/ICPC Asia Regional Online —— Warmup Herding Time Limit: 2000/1000 ...
- hduoj 4707 Pet 2013 ACM/ICPC Asia Regional Online —— Warmup
http://acm.hdu.edu.cn/showproblem.php?pid=4707 Pet Time Limit: 4000/2000 MS (Java/Others) Memory ...
- hduoj 4706 Children's Day 2013 ACM/ICPC Asia Regional Online —— Warmup
http://acm.hdu.edu.cn/showproblem.php?pid=4706 Children's Day Time Limit: 2000/1000 MS (Java/Others) ...
- 2016 ACM/ICPC Asia Regional Shenyang Online 1003/HDU 5894 数学/组合数/逆元
hannnnah_j’s Biological Test Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K ...
- 2016 ACM/ICPC Asia Regional Qingdao Online 1001/HDU5878 打表二分
I Count Two Three Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- 2016 ACM/ICPC Asia Regional Shenyang Online 1009/HDU 5900 区间dp
QSC and Master Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
随机推荐
- 面试题目-atof与ftoa
/////////////////////////////////////////////////////////////////////////////// // // FileName : ato ...
- 反Secure Boot垄断:兼谈如何在Windows 8电脑上安装Linux
感谢HQSQ的投递一.自由软件基金会的呼吁上周,2012年将近结束的时候,自由软件基金会(FSF)发出呼吁,要求人们继续支持反Secure Boot垄断,希望签名者能达到5万人(目前是4万).我觉得, ...
- 免费获得NOD32 半年、1年 激活码-14.08.12到期
地址: http://nod32.ruanmei.com/ 活动时间: 2014年8月6日 - 8月12日(全部送完将提前终止). 活动规则: 1.每台电脑限领1枚NOD32激活码: 2.领到的NOD ...
- IOS四种保存数据的方式
在iOS开发过程中,不管是做什么应用,都会碰到数据保存的问题.将数据保存到本地,能够让程序的运行更加流畅,不会出现让人厌恶的菊花形状,使得用户体验更好.下面介绍一下数据保存的方式: 1.NSKeyed ...
- Ubuntu 14.10 下设置静态IP
修改 /etc/network/interfaces 文件 sudo nano /etc/network/interfaces 修改为 # 前面的不变auto eth0 iface eth0 inet ...
- Be Careful With BuildConfig.DEBUG
Be Careful With BuildConfig.DEBUG http://www.digipom.com/be-careful-with-buildconfig-debug/
- nosql(1)---radis
Radis是一个key-value数据库,它会将key放入内存中,value放在硬盘上. 可以将数据持久化存储到磁盘. 内置的主从复制: master server和slave server之间有内 ...
- 进行以上Java编译的时候,出现unmappable character for encoding GBK。
public class Exerc02{ public static void main(String args []){ char c = '中国人'; System.out.pingtln(c) ...
- php大力力 [020节]mysql数据库唯一id字段如何设置
2015-08-26 php大力力020.mysql数据库唯一id字段如何设置 不懂 以下有些文章 mysql唯一id 自动生成 uuid mysql 里面可以用uuid()语句来生成一个UUID:s ...
- android手机连接PC无法正常安装驱动
工作当中我们经常会遇到Android手机连接PC的时候无法正确安装驱动,或者安装失败.当然找到正确的驱动文件时首选的解决方案,如果正确的驱动文件依旧无法安装成功我们可以打开我的电脑-->属性-- ...