hihocoder
文章平均质量分 73
榴莲泡芙2018
随便记录一些东西
微信公众号:榴莲泡芙
展开
-
初识splay tree (一)
本来是要做hihocoder 1034 毁灭者问题,发现朴素的数据结构无法满足该题目如此BT的要求,随查了一下,splay tree貌似可以解决,于是目标转到了学习splay tree上。 学习splay tree 的主要参考资料: 《伸展树的基本操作与应用》– 杨思雨 《运用伸展树解决数列维护问题》– By Crash 《Splaying a Search Tree in Preorde原创 2015-05-09 03:29:16 · 519 阅读 · 0 评论 -
hihocoder 1033 交错和
[题目连接:][1]时间限制:10000ms 单点时限:1000ms 内存限制:256MB描述 给定一个数 x,设它十进制展从高位到低位上的数位依次是 a0, a1, …, an - 1,定义交错和函数: f(x) = a0 - a1 + a2 - … + ( - 1)^[n - 1]*an - 1 例如: f(3214567) = 3 - 2 + 1 - 4 + 5 - 6 +原创 2015-05-04 18:34:17 · 1046 阅读 · 0 评论 -
初识splay tree ( hihocoder #1034 : 毁灭者问题 题解)
题目连接题目描述时间限制:10000ms 单点时限:1000ms 内存限制:256MB 解题思路:按照每个时间点的操作直接暴力显然会TLE,现在不按照时间点进行考虑,而是考虑每个魔法单位都在哪些时间点被抽取了,这样每个魔法单位都有一组被抽取的时间间隔,同时,每个魔法单位都有最大上限M和恢复速度R,考虑某一个魔法单位A的一组时间间隔,按大小分类:大于等于 (M+R-1)/R 的:意味着抽取原创 2015-06-03 14:30:33 · 2108 阅读 · 0 评论 -
hihocoder #1035 : 自驾旅行 III 树形DP
题目连接 思路参考 题目显然是一个树形DP,我们用dp[ i ][ j ]表示已经询问了子树i的所有关键节点,人车的一个状态。其中 j==0:人去,不管人是否回来 j==1:人去,人一定要回来 j==2:人车都去,人车都要回来 j==3:人车都去,人一定要回来,车不管 j==4:人车都去,不管人车最后是否回来。 注意,这里显然有 dpi>=dp[i][0原创 2015-06-11 11:26:22 · 1165 阅读 · 0 评论 -
hihocoder #1036 : Trie图
第一次接触Trie图,参考了两个文档: 《Trie图的构建、活用与改进-PPT》,里面有一个例子可以参考。 《hihocoder#1036 : Trie图》,题目本身对算法讲解的很详细。 trie图是借助了KMP、后缀的思想,对Trie树做了改进,具体还是以题目本身的讲解为主了。 建图过程最主要的有两步:计算当前节点的后缀节点。为当前节点补全后缀指针。代码#include <iostr原创 2015-06-12 12:21:08 · 506 阅读 · 0 评论