NOIP2015PJ T3,T4题解
来源:互联网 发布:排名优化软件点击 编辑:程序博客网 时间:2024/05/05 22:49
NOIP2015 PJ T3,T4 solution
By—Jim·H
sum……………………………………………………………2
salesman……………………………………………………3
Sum
40%
且color[z]=color[x],x与z的奇偶性相同
复杂度O(N2)
70%
表示不知道这个部分分有什么用
100%
考虑优化
对于每个x,z我们可拆解一下公式
x*num[x]+z*num[z]+x*num[z]+z*num[x]
对于每个z,我们可以边做边累加与他合法的前缀和,再加上就好了。
复杂度O(N)
Salesman
我们可以考虑贪心
因为我们走路所需要的疲劳值,就是走到最右边那户人的疲劳值,左边所有的对他都没有影响。
我们设最右边的为last
显然这个last把整条街分成了左右两部分,一部分是走路疲劳值没有影响的,一部分是有影响的。
可以看出,随着X的增大,最优的last一定是单调不减的。
因为他这个last是我们综合两边最优的值选出来的,选别的一定没有他优。
如果有多个相同的值,我们完全可以贪心的选择最左边的那一个。因为他对以后答案的影响最小(其实都一样),也保持了last的单调不减性
我们可以用两个堆分别维护最大值,每做一个X,看看新取的这个在左边还是在右边,如果在左边就把ans加上,再把他总左边堆里删除。如果在右边,就加入答案,并且把last修改为这个数。此时,我们使得从旧last+1到新last-1这部分变成了走路疲劳值没有影响的,所以我们可以把其中每个数都从右边的堆删除,加入左边的堆就好了。
堆的复杂度是log N的,然后枚举X是N,然后所有的改变last中的操作全部加起来是N,复杂度就是O(2N log N)
- NOIP2015PJ T3,T4题解
- noip2015pj t4
- NOIP2015 PJ T3,T4 题解
- SRM552题解 (T3除外)
- [NOIP2010]三国游戏 T4 题解
- SRM605题解(T3除外)
- SRM551 题解(T3 除外)
- SRM628题解 (T3除外)
- SRM556题解(T3除外)
- NOIP 2009 T3 自由贸易题解
- noip2008 传纸条 T3题解
- 【树形DP】17.2.6 T4 苹果树 题解
- 【DP】17.2.7 T4 凑硬币 题解
- noip2007普及组T1--T4题解
- SRM607 题解(除T3外)
- SRM606题解(除T3外)
- SRM604题解(除T3外)
- 【DP】17.2.7 T3 多米诺骨牌 题解
- 毫秒必争,前端网页性能最佳实践
- Java 枚举 String-String
- iOS UITableView head view与cell view文字垂直居中,文字右对齐
- Objective-C多态,动态类型识别,动态绑定
- k-d tree算法的研究
- NOIP2015PJ T3,T4题解
- VC++ 通过ADO方式连接SQLServer20XX出现sqlserver 不存在或者拒绝连接错误
- 关于UITableView的间隔问题(header和footer)和分割线
- 什么是数据的高内聚、低耦合
- 清理缓存和计算缓存内容大小
- 空间索引
- Volley网络请求源码分析
- 590 A. Median Smoothing
- 九度OJ 1256:找出两个只出现了一次的数字 (位运算)