树状数组 线段树 rmq 各种树 各种字符串题目
文章平均质量分 76
apsara-jueying
阿里云菜鸟攻城狮
展开
-
poj 3264 Balanced Lineup(两遍sparse-table算法的rmq问题)
刚搞掉了ping pong那个BIT 照着训练指南乘胜追击学的RMQ问题 这个题我貌似早就见过 一直都不会。刚才有了BIT的思想学了一下 sparse-table算法 还算比较简单吧。 先说说这个算法 就是给出序列 和查询 q i j问你i和j之间的最小值是多少 这个暴力的话要n方 肯定是不行的。但是st算法预处理的时间是nlogn 查询时间基本是o(1)的 我们用一个二维原创 2013-01-17 11:18:06 · 455 阅读 · 0 评论 -
hdu 1166 敌兵布阵(裸树状数组)
今天在LRJ的 训练之南里看到了树状数组 原来还有个名字叫 二叉索引树 于是看了一下 加深了对数组数组的理解 遂把以前写的BIT题温习一下 然后敲那道困扰了我还就的 ping pong 题目太啰嗦了。。。题意是给出n 然后n个整数 是初始值 四种命令 add sub query end end就是命令结束了 这就是纯纯的BIT了。 #include #inclu原创 2013-01-24 16:32:15 · 338 阅读 · 0 评论 -
poj 3368 Frequent values(RMQ问题)
再搞一道RMQ吧。。 题意是 给出序列 非降序的 询问q i j 要i 和 j之间的 出现次数最多的次数 就是最高次数 n q 都是10w 这个题目啊我们用游程长度编码 把原来的数组分段 最近才在科学导论的数据压缩里看过的。。 value[i] 表示 第i断的值 count[i]表示第i断的值 出现的次数。 num[p]位置p所在断的编号 left原创 2013-01-24 16:33:09 · 393 阅读 · 0 评论 -
dut oj1192 Problem G(2012辽宁省赛G题 树状数组)
在DUT oj上的。好像以前就敲过这两道树状数组。。。就连带复习了 话说这个题目啊,,,如果早点学了BIT 省赛。。。哎。。。 我发现自己很多次都是这样 到了关键的时候该用到什么了 发现自己以前知道 但是没有学。。 这个题目是异或而不是加 这样稍微增加了一点难度 题意是给出数组后 给m个操作 每个操作 要么是更新 要么是查询 q(i)表示从一开始异或到b原创 2013-01-24 16:31:15 · 358 阅读 · 0 评论 -
POJ 3928(ping pong 08年北京站的题 比较难的树状数组)
这个题好久前我就做过了 估计多半年了 T掉了一看要用BIT 后来学了BIT后还是不会做。。。今天再用LRJ的训练指南学了BIT 然后复习了以前的 正好训练指南上这个是例题。 我一定要搞出来、 大概看了讲解 有一点思路了 但愿在一个小时十分钟内AC掉 题意就是给出n个人的数组 每个人有一个能力值 并且是唯一的 现在要比赛,每次比赛要三个人 其中一个裁判 裁判必须在位置上原创 2013-01-24 16:30:16 · 425 阅读 · 0 评论 -
hdu 1251 统计难题(Trie树,就是字典树)
复习一下字典树。 题意就是分两拨给出一堆string 第一波是一堆单词 小写字母组成 以一个空行为结束 第二波是一堆单词 对第一波中的每一个单词 找出之前那些单词中有多少是以这个为前缀的 这个就是字典树的struct里面加一个num表示到这个点的这条路有多少条单词走过了。也就是前缀了。 所以tire树要活学活用的。。总体思想就是 每个节点最多有 26个子树的树 node *原创 2013-01-25 11:25:39 · 360 阅读 · 0 评论 -
hdu 1075What Are You Talking About(字典树 用map 水过了。。。)
刚发现hdu 上这个题提交过 没过 然后发现PE 不知道为什么一直都PE。。。重新敲了一遍过了。。 水过的没啥好说的了 就是注意 读字符串 scanf getchar gets 几个函数的使用就ok了l #include #include #include #include #include using namespace std; int main() { char s1[15原创 2013-01-26 17:46:40 · 389 阅读 · 0 评论 -
hdu 1075 What Are You Talking About(字典树方法)
本来就是字典树的题目。。所以就又用字典树敲了一遍 一A 还算顺利 大题结构像刚才那个一样 主要是超找一个 单词 首先预处理的时候 insert 火星文 然后用字典树 记录index 最后用vector 记录 翻译过来的英文 index一样。 就差不多就这样了。。 顺便说一下 刚才水的map1300+ms tire 树300+ms #include #incl原创 2013-01-26 18:43:06 · 346 阅读 · 0 评论 -
LA 3942 Remember the word(字典树加DP)wa到吐血。。
wa到我吐血。。后来发现是把1027写成1207了 我真想抽死我自己。。 一开始dp写的是递归 然后指针一直有bug。。受不了 一想这么写出来也得T。。因为有重复计算,再说递归本来就慢。 后来就改成从前往后迭代相加的 本来是对的。。但是因为写错了mod 一直wa 后来又改成静态字典树。。wa了11次。。 建字典树 然后用dp[i]表示以i结尾的字符串有多少种构造方法了。 d原创 2013-01-30 00:15:59 · 494 阅读 · 0 评论