之前说过这题能用点分治(详见 http://www.cnblogs.com/jasonyu/p/noi2014.html),但其实还有更粗暴的解法. 要求出一个点的答案,我们需要知道树上一段路径的点形成的下凸壳.不过我们其实也不一定非要知道这整段的下凸壳,分成合适的段数分别二分求最优值也可以.假如是一条链的话,用线段树就可以了.对于树,我们就再套一层树链剖分.下面说一下具体做法. 首先树链剖分一下.然后考虑在树的dfs序(或bfs序)中,排在前面的点的答案不会依赖于后面的点的答案,所以我们可以按…
「NOI2014」购票 写完了后发现写的做法是假的...然后居然过了,然后就懒得管正解了. 发现需要维护凸包,动态加点,询问区间,强制在线 可以二进制分组搞,然后你发现在树上需要资瓷撤回,然后暴力撤回(雾 然后就被卡了 卡法,在\(2^k-1\)位置搞一朵菊花 先留坑,以后要是会了一些神奇的姿势就来搞 这题叉积会爆ll,坑 Code: #include <cstdio> #include <cctype> #include <vector> #include <a…
「NOI2014」购票 解题思路 先列出 \(dp\) 式子并稍微转化一下 \[ dp[u] =\min(dp[v]+(dis[u]-dis[v]) \times p[u] + q[u])) \ \ \ \ (dis[v]-lim[u] \leq dis[u]) \\ dp[u]=\min(dp[v]+dis[v]\times p[u]) + p[u]\times dis[u]+q[u] \\ \] 假设有 \(dis(v2)< dis(v1)\) 且 \(p(u)\) 在 \(v2\) 的取值…
[BZOJ3672][NOI2014]购票(线段树,斜率优化,动态规划) 题解 首先考虑\(dp\)的方程,设\(f[i]\)表示\(i\)的最优值 很明显的转移\(f[i]=min(f[j]+(dep[i]-dep[j])·p[i])+q[i]\) 其中满足\(dep[i]-dep[j]\le L[i]\) 然后就可以写出一个\(O(n^2)\)的做法啦 #include<iostream> #include<cstdio> #include<cstdlib> #in…
这一篇是真的隔了好久了~~,也终于可以喘口气来好好写博客了,这段时间实在是忙不过来了,迭代太紧.好,废话不多说,进入今天的主题. 效果 图一是Tv应用:当贝市场的主页 图二是咱自己撸的简单粗暴的 Tv 应用主界面网格控件:TvGridLayout 的示例 今天这篇就不讲源码,不讲原理了,来讲讲怎么简单粗暴的撸个网格控件出来. 如果要你实现类似当贝市场主页的这种布局,你会怎么做?顶部的 Tab 栏先不管,就每个 Tab 下的卡位列表是不止一屏的,注意看,在同一个 Tab 下是可以左右切屏的:而且每…
原型链理解起来有点绕了,网上资料也是很多,每次晚上睡不着的时候总喜欢在网上找点原型链和闭包的文章看,效果极好. 不要纠结于那一堆术语了,那除了让你脑筋拧成麻花,真的不能帮你什么.简单粗暴点看原型链吧,想点与代码无关的事,比如人.妖以及人妖. 1)人是人他妈生的,妖是妖他妈生的.人和妖都是对象实例,而人他妈和妖他妈就是原型.原型也是对象,叫原型对象. 2)人他妈和人他爸啪啪啪能生出一堆人宝宝.妖他妈和妖他爸啪啪啪能生出一堆妖宝宝,啪啪啪就是构造函数,俗称造人. 3)人他妈会记录啪啪啪的信息,所以可…
现在市面上有很多成熟的MVC框架,可以拿来直接用,但自己造一下轮子其实也挺有意思的. 下面先来看个最简单粗暴的MVC实现. 5个文件就能实现最简单的MVC,在Apache中设置一个虚拟目录,配置个简单域名,就可以顺利访问了. 为了实现简单,这里没有写模型层. 一.index.php 这个文件是入口文件,所有的请求就将会先进入到这个文件,然后再通过路由进入到不同的控制器中. 这就是常说的单一入口. 1. 我简单的将路由也放在了这个文件中. 2. 还将一个简单的全局常量放在了这里. define('…
在<<足球游戏论坛数据分析--简单粗暴的贝叶斯>>中尝试了贴标签后,一直觉得结果无法接受, 慢慢回想, 其实选择的算法是错误的,原因有 论坛帖子分类并非就是PC/PS/XBOX这么简单 即使是作者自己贴的标签,也存在挂羊头的可能性 既然没法简单的给帖子分类,那么就尝试一下聚类算法看看有没有发现: #事先已经把分好词的所有文本存成一个文件,没有事先分类 f = codecs.open('forum_all.txt', 'r', 'utf-8') words_full = f.read…
原型链理解起来有点绕了,网上资料也是很多,每次晚上睡不着的时候总喜欢在网上找点原型链和闭包的文章看,效果极好. 不要纠结于那一堆术语了,那除了让你脑筋拧成麻花,真的不能帮你什么.简单粗暴点看原型链吧,想点与代码无关的事,比如人.妖以及人妖. 1)人是人他妈生的,妖是妖他妈生的.人和妖都是对象实例,而人他妈和妖他妈就是原型.原型也是对象,叫原型对象. 2)人他妈和人他爸啪啪啪能生出一堆人宝宝.妖他妈和妖他爸啪啪啪能生出一堆妖宝宝,啪啪啪就是构造函数,俗称造人. 3)人他妈会记录啪啪啪的信息,所以可…
原型链理解起来有点绕了,网上资料也是很多,每次晚上睡不着的时候总喜欢在网上找点原型链和闭包的文章看,效果极好. 不要纠结于那一堆术语了,那除了让你脑筋拧成麻花,真的不能帮你什么.简单粗暴点看原型链吧,想点与代码无关的事,比如人.妖以及人妖. 1)人是人他妈生的,妖是妖他妈生的.人和妖都是对象实例,而人他妈和妖他妈就是原型.原型也是对象,叫原型对象. 2)人他妈和人他爸啪啪啪能生出一堆人宝宝.妖他妈和妖他爸啪啪啪能生出一堆妖宝宝,啪啪啪就是构造函数,俗称造人. 3)人他妈会记录啪啪啪的信息,所以可…