NOI2014题解
起床困难综合症(BZOJ 3668)
送分题,直接从高位向低位贪心。
魔法森林(BZOJ 3669)
一个容易想到的办法就是枚举A的最大值,以B作为权值求最小生成树。暴力的话要T的。如果从小到大枚举A的最大值,每次仅会添加一些新的边,所以自然想到用LCT维护。本来还可以考一下LCT的,结果考场上A此题的人多半都写的各式各样的黑暗算法。真不知道出题人是怎么出的数据。
动物园(BZOJ 3670)
题目里面就把题解都说明白了,要用KMP。求了next数组后,以next为边建成一棵树,然后就很好做了,只需要知道到根的链上有多少标号不超过当前点标号一半的点。由于是单调的,直接二分就好了。注意不能暴力移动父节点一半的位置来得到新的位置,这样最坏不是O(n)的,虽然随机数据跑得飞快(随机数据随便怎么暴力都跑得飞快)。很容易构造数据卡成O(n^2),像这样就行了:前面一串a,中间一串b,末尾又一串a。不过官方数据似乎过弱,有人这么写当场就A了。
随机数生成器(BZOJ 3671)
很逗的题。只要不被随机忽悠,这题就成了大水题。贪心从小到大填,能填就填。每一行可填的位置一定时刻有个上下界,开两个数组暴力维护就行了。判断能否填是O(1)的,填入是O(n)的,而填入的次数是O(n)的,所以总复杂度是O(n^2)了。整个考的就是数组和for循环,5分钟之内就能写出来。卡内存?能用short的用short就行了。不过考场上的我更逗,写了个线段树维护上下界,判断和填入都是O(lgn)的,而且当时居然还开了n^2级别的线段树节点,我都不知道自己当时怎么想的!
购票(BZOJ 3672)
这题应当是本次NOI中最有价值的一道题了。考场上只搞出了t=0或1的数据,拿了70分。当时想的是用可持久化Treap维护每个节点到根节点的下凸壳,但是只要有距离限制就直接跪了,没法将凸壳拆一段下来。后来研究了半天,才发现分治大法好。
考虑链上带距离限制该怎么做(t=2)。cdq分治就行了。下面想怎么转换到树上。
点分治的时候,我们抓个重心出来,将重心去掉后树就变成了几棵树。其中有包含重心父节点的那棵。这棵树中的节点显然不会从其他树中的节点转移过来,所以可以先处理这棵树。然后我们处理这棵树对另外的树的贡献,这和cdq分治就很像了。类似地做就是了。需要注意的是树中所有以重心为“端点”的转移都应该被处理,被打上标记后重心就不会被考虑了。
NOI2014题解的更多相关文章
- NOI2014 部分题解
感觉NOI2014的一些题目也是比较好做的... 但是笔者往往有思路却没有想清楚就开始搞了...这样还是不太好.. Day1 T1 起床困难综合征 (我感觉这题应该叫综合征不是综合症...) a ...
- NOI2014魔法森林题解报告
题目描述 为了得到书法大家的真传,小 E 同学下定决心去拜访住在魔法森林中的隐 士.魔法森林可以被看成一个包含 n 个节点 m 条边的无向图,节点标号为 1,2,3,-,n,边标号为 1,2,3,-, ...
- 【题解】洛谷P2375 [NOI2014] 动物园(KMP)
洛谷P2375:https://www.luogu.org/problemnew/show/P2375 思路 这道题可以说是完全刷新了本蒟蒻对KMP的理解 感觉对next数组的理解上升到一个新的高度 ...
- BZOJ3669:[NOI2014]魔法森林——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=3669 https://www.luogu.org/problemnew/show/P2387 为了得 ...
- 【KMP】洛谷P2375 [NOI2014]动物园 题解
一开始的方向应该对了,但是没有想到合理的优化还是没写出来…… 题目描述 近日,园长发现动物园中好吃懒做的动物越来越多了.例如企鹅,只会卖萌向游客要吃的.为了整治动物园的不良风气,让动物们凭自己 ...
- 【题解】 UOJ #2. 【NOI2014】起床困难综合症
传送门 不是很简单? 考虑一下这个数的二进制位是什么,要么是1,要么是0. 然后怎么做? 因为一开始可以选0~m的数,那么二进制为中全是0的肯定是可以选的. 接着考虑全是1的怎么选? 如果全都是1的而 ...
- BZOJ3670 & 洛谷2375 & UOJ5:[NOI2014]动物园——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=3670 https://www.luogu.org/problemnew/show/P2375#su ...
- BZOJ3668:[NOI2014]起床困难综合症——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=3668 https://www.luogu.org/problemnew/show/P2114 21世 ...
- 【题解】NOI2014购票
实际上是一个不完美算法……cogs上面A不掉(爆栈啦).感谢机房大佬PPY的指点,现在也写出来供大家参考参考,理解起来应该是比较简单的一种. 我们首先get出斜率优化方程: \(dp[v] = dis ...
随机推荐
- jquery中prop()方法和attr()方法的区别(转)
jquery1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值. 官方例举的例子感觉和attr()差不多,也不知道有什么区别,既然有了pro ...
- Linux下查看所有用户(shell脚本获取)
在Linux系统中,使用者账号管理最重要的两个文件是/etc/password和/etc/shadow.在/etc/password文件中,每一行都代表一个账号,但是有很多账号是系统账号.比如:b ...
- csv操作帮助类
功能描述: 集合转换为csv数据 DataSe转换为csv数据 using System; using System.Collections.Generic; using System.Data; u ...
- Android - 硬件抽象层(HAL)
以下资料摘录整理自老罗的Android之旅博客,是对老罗的博客关于Android底层原理的一个抽象的知识概括总结(如有错误欢迎指出)(侵删):http://blog.csdn.net/luosheng ...
- 使用nice命令调整进程优先级
Adjusting Process Priority with nice When Linux processes are started, they are started with a spe ...
- iis7 发布mvc 遇到的HTTP错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容
iis 7上发布mvc报错:403.14-Forbidden Web 服务器被配置为不列出此目录的内容 提示里面的解决方法是: 如果不希望启用目录浏览,请确保配置了默认文档并且该文件存在. 使用 II ...
- 如何完全卸载SQL Server 2005
用过SQL Server 2005的朋友都应该知道,不管是安装还是完全卸载都是件很头疼的事情. 下面跟大家分享一下如何完全卸载SQL Server 2005(手动卸载步骤哦~~). 一.停止sql的服 ...
- 配置CAS错误No Certificate file specified or invalid file format
配置tomcat证书 keystore文件后启动一直报错:(tomcat版本:apache-tomcat-6.0.43) tomcat配置: <Connector port="8443 ...
- 三维FEM的刚度矩阵数量级
刚刚在调试三维的FEM代码,随手把全局刚度矩阵在FULL的情况下保存到了dat文件里. 注意,这个仅仅是一个半径为十的球的刚度矩阵 居然3.6G!!吓坏了!!截个图,留个纪念.还是老老实实用spars ...
- Java语言实现简单FTP软件------>FTP软件本地窗口的实现(五)
1.首先看一下本地窗口的布局效果 2.看一下本地窗口实现的代码框架 2.本地窗口的具体实现代码LocalPanel.java package com.oyp.ftp.panel.local; impo ...