摘要: (本来对于树状数组没啥感觉的....毕竟潜意识的认为只要树状数组的能够解决的问题我都可以用线段树解决,但是对于一些玄学题目可能会被卡掉T 因为在树状数组能适用的题,他在空间和时间都优于线段树,所以学好树状数组也是很重要的,具体的实现过程百度.....实质上只是二进制的运用 熟练运用二进制就能解决相关 阅读全文
posted @ 2017-10-03 21:04 wang9897 阅读(188) 评论(0) 推荐(0) 编辑
摘要: (本来对于树状数组没啥感觉的....毕竟潜意识的认为只要线段树的能够解决的问题我都可以用树状数组解决,但是对于一些玄学题目可能会被卡掉T 因为在树状数组能适用的题,他在空间和时间都优于线段树,所以学好树状数组也是很重要的,具体的实现过程百度.....实质上只是二进制的运用 熟练运用二进制就能解决相关 阅读全文
posted @ 2017-10-03 21:01 wang9897 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 首先,后缀数组的无敌功能不用我来叙述,一旦能够确定题目能够用后缀数组解决,这个题就最少成功了百分之五十,作为字符串解决方法里面,后缀数组是比较方便且很理想的解决方法,但是往往需要对题目进行分析来确定是否能够使用,而后缀数组的实现及原理,我这里就不详细的叙述,网上有学习博客,可以弄清楚模板的含义,以及 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 题意:给你两个字符串 求第二个字符串的后缀在第一个字符串中出现的次数; 题解:比赛的时候全懵逼,各种奇葩思路,后缀数组优化KMP什么的,最后结束比赛才在学长的指导下,知道了用KMP的性质和后缀数组的特性去解题,直接A掉 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 显然可知对于后缀数组最难理解的就是sa数组和rank数组的构建,而sa与rank数组之间有一个相互转化关系,这就必须理解sa数组和rank数组的含义,sa数组代表的是排名为i的后缀第一个字符所在的位置,而rank数组则表示的是第i个位置的后缀的排名;通过这个关系,我们可以实现sa与rank之间的转化 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 考试周后的第一发 写搜索题找手感 题意:给你一个n*n的棋盘及其放棋子的位置 给定旗子数目 问在满足条件下 能够有多少种不同放棋子的方法 写了一发DFS 差点写炸 不断搜索判断是否符合题意即可; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 题意:就是给出三维坐标系上的一些球的球心坐标和其半径,搭建通路,使得他们能够相互连通。如果两个球有重叠的部分则算为已连通,无需再搭桥。求搭建通路的最小费用,最小生成树板子题,细心处理数据即可; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 题意:提供任意两点直接的距离,然后在已知某两点直接已经修建好路的情况下,问还需要修长的最小距离,注意!再用 kruskal 算法的时候注意有些已经修好的边可能出现重复的 所以需要判断处理,其他都是套路,细心处理即可; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 题意:多组数据输入的最小生成树果题 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 题意:最小生成树模板题,主要是输入方面的处理,数据不大,可以采用cin输入,也可以用scanf用getchar()来控制即可; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 题意:线段树水题,区间取最大值最小值即可,不用更新,直接跑; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一些操作,不断更新一些区间的颜色,求最后间断每种颜色的个数,直接线段树处理,每次更新,加上lazy标记,注意如何处理区间的端点是这题的关键; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 题意:水题线段树,区间更新带上+lazy标记,最后统计即可; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 题意:(刚开始没看懂题啊 很僵硬 )大概意思就是给你一个n*m的海报 然后 让你贴小广告,优先往上和往右,很明显要建树,这里对于数的叶子节点要分类考虑,首先n与K的关系,n<k时建树的叶子节点应该n,反之为k,存入数的是当前存在的位置最多多少,然后遍历树,若左节点的空位大于要求的调用左儿子,反之右儿 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 题意:线段树水题,区间更新,带上lazy标记即可; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 题意:线段树求逆序对经典题目,需要离散处理,但是用stl处理的话会T,手动二分处理即可; 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 题意:大概就是有三种操作吧,第一种在队列后面加入新人,引入一个不耐烦程度,第二种第一个人出队(直接让头结点的序号+1即可),第三种统计在队伍里面不耐烦程度最高的数(PS:随着操作的进行队列中每一个人的不耐烦程度+1),刚开始我是将每个节点加入线段树中,对于每个操作,打上lazy标记,用线段树区间维护 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 思路:通过样例找出规律,大概就是每次线段树维护后,能够确定找到下一个输出的位置,然后把这个位置的叶子节点设置为0,再次维护线段树即可; #include<algorithm> #include<queue> #include<iostream> #include<stack> #include<ve 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 题意:大概就是给你两个数,代表A能够打败B,也就是说你建图时,有一条A到B权值为1的边,而现在要求能确定的位置,意思就是在一个某一个位置要么有从源点到其他点的边或者从其他点到源点的边,统计这样的点有多少个即可,题目数据只有100个点,直接floyd,一般而言,floyd的范围在1000以内;#inc... 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 题意:最短路变形题吧,就是不同种货币之间有转换关系,现在给出这种关系让你判断经过一系列转换后,回到初始货币时,能否盈利,这个需要判断是否会出现一直在一个环类不断循环,也就是会出现正环,应采用spfa,判断正环,有正环直接跳出,能盈利即可;#include#include#include#includ... 阅读全文
posted @ 2017-10-03 20:25 wang9897 阅读(75) 评论(0) 推荐(0) 编辑