摘要:
<题目链接> 题目大意: 刚开始每行输入两个单词,第二个单词存入单词库,并且每行第二个单词映射着对应的第一个单词。然后每行输入一个单词,如果单词库中有相同的单词,则输出它对应的那个单词,否则输出“eh”。 解体分析: 本题是trie树的模板题,在建树的时候,在每个单词的结尾节点储存对应单词的序号即可
阅读全文
posted @ 2018-10-28 23:50
悠悠呦~
阅读(220)
推荐(0)
posted @ 2018-10-27 23:32
悠悠呦~
阅读(11)
推荐(0)
摘要:
<题目链接> 题目大意: 一个机器人从(0,0)出发,输入一段指令字符串,和机器人需要在指定步数后到达的终点,问如果机器人需要在指定步数内到达终点,那么需要对原指令字符串做出怎样的改变,假设改变 字符串的最大下标为maxindex,改变字符串的最小下标为minindex,输出最小的 maxindex
阅读全文
posted @ 2018-10-27 21:31
悠悠呦~
阅读(443)
推荐(0)
摘要:
<题目链接> 题目大意: 给你一堆字符串,让你按字典序输出他们出现的频率. 解题分析: 首先,这是Trie数词频统计的题目,以Trie树的边储存字母,节点存储以该节点结尾的链所代表的字符串的数量,最后用dfs寻找Trie树中所有的单词,下面代码是用数组实现的Trie树。当然,本题也可用快排或者map
阅读全文
posted @ 2018-10-26 23:57
悠悠呦~
阅读(214)
推荐(0)
posted @ 2018-10-25 22:51
悠悠呦~
阅读(1)
推荐(0)
摘要:
<题目链接> 题目大意:给定一颗带点权的树,进行两种操作,k=0,更改某一点的点权,k!=0,输出a~b路径之间权值第k大的点的点权。 解题分析:先通过RMQ的初始化,预处理pre[]数组,并且求出a和b的LCA。然后利用LCA将a、b路径上所有点的点权全部存储起来,将其排序,就可得到a、b路径上权
阅读全文
posted @ 2018-10-23 23:44
悠悠呦~
阅读(160)
推荐(0)
posted @ 2018-10-23 22:19
悠悠呦~
阅读(7)
推荐(0)
posted @ 2018-10-22 23:25
悠悠呦~
阅读(2)
推荐(0)
posted @ 2018-10-22 16:23
悠悠呦~
阅读(1)
推荐(0)
posted @ 2018-10-21 22:58
悠悠呦~
阅读(1)
推荐(0)
摘要:
<题目链接> <转载于 >>> > 题目大意: 给出一个长度不超过1000位的数,求删去m位数字以后形成的最小的数字是多少。 解题分析: 分析:我们可以把题目转化为这样一个模型:从A[1]、A[2]、……、A[n] n个数中选出n-m个数,使得组成的数最小。一、使用RMQ,设原数字长为n,那么除去m
阅读全文
posted @ 2018-10-20 16:27
悠悠呦~
阅读(202)
推荐(0)
摘要:
<题目链接> <转载于 >>> > 题目大意: 给出一个N*M的矩阵,并且给出该矩阵上每个点对应的值,再进行Q次询问,每次询问给出代询问子矩阵的左上顶点和右下顶点,问该子矩阵的最大值是多少,并且判断该最值是否在该子矩阵的四个顶角上。 解题分析: 很明显求二维区间内的最值,需要用到二维RMQ,其中dp
阅读全文
posted @ 2018-10-20 12:33
悠悠呦~
阅读(204)
推荐(0)
摘要:
<题目链接> 题目大意: 给定一段序列,进行q次询问,输出每次询问区间的最大值与最小值之差。 解题分析: RMQ模板题,用ST表求解,ST表用了倍增的原理。 2018-10-19
阅读全文
posted @ 2018-10-19 23:03
悠悠呦~
阅读(214)
推荐(0)
摘要:
<题目链接> 题目大意: 给你一个长度为n的序列,这个序列每个数都有一个值,接下来进行q次询问,问在指定区间内出现次数最多的数出现了几次。 解题分析: 因为该序列是非降序的,所以该序列中的所有相等的数都是连续的,因此,我们可以先用dp预处理一下,dp[i]表示以第i个数结尾的最大连续相等个数,于是,
阅读全文
posted @ 2018-10-19 21:19
悠悠呦~
阅读(269)
推荐(0)
摘要:
<题目链接> 题目大意:给你一段序列,进行q次区间查询,每次都输出询问区间内的最小值。 解题分析: RMQ模板题,下面用在线算法——ST算法求解。不懂ST算法的可以看这篇博客 >>> 2018-10-19
阅读全文
posted @ 2018-10-19 14:24
悠悠呦~
阅读(279)
推荐(0)
摘要:
<题目链接> 题目大意: 无向连通图求桥,并将桥按顺序输出。 解题分析; 无向图求桥的模板题,下面用了kuangbin的模板。 2018-10-18
阅读全文
posted @ 2018-10-18 00:47
悠悠呦~
阅读(380)
推荐(0)
摘要:
<题目链接> 题目大意: 给出一个无向图,求出其中的割点数量。 解题分析: 无向图求割点模板题。 一个顶点u是割点,当且仅当满足 (1) u为树根,且u有多于一个子树。 (2) u不为树根,且满足存在(u,v)为树枝边(或称 父子边,即u为v在搜索树中的父亲),使得 dfn(u)<=low(v)。(
阅读全文
posted @ 2018-10-17 23:54
悠悠呦~
阅读(206)
推荐(0)
摘要:
<题目链接> 题目大意: 给你一个H*W的矩阵,再告诉你有n个坐标有点,问你一个w*h的小矩阵最多能够包括多少个点。 解题分析:二维树状数组模板题。 2018-10-17
阅读全文
posted @ 2018-10-17 17:06
悠悠呦~
阅读(251)
推荐(0)
摘要:
<题目链接> 题目大意: 有两个点集,这两个点集从上至下分别从1~n,1~m编号,现在给出n组数据,(x,y),表示左边点集编号为x的点与右边点集编号为y的点相连,现在要求计算这些线段的交点个数。 解题分析: 先将这些线段的x变量从小到大排序,若x相同,再将y从小到大排序。然后就可以直接遍历这些线段
阅读全文
posted @ 2018-10-17 14:55
悠悠呦~
阅读(191)
推荐(0)
摘要:
<题目链接> 题目大意: 就是给出N个区间,问这个区间是多少个区间的真子集。 解题分析: 本题与stars类似,只要巧妙的将线段的起点和终点分别看成 二维坐标系中的x,y坐标,就会发现,其实本题就是求每个点(把线段看成点) 左上角点的个数(包括边界,但并不包括与该点坐标完全相同的点),所以,与sta
阅读全文
posted @ 2018-10-16 23:53
悠悠呦~
阅读(282)
推荐(0)
摘要:
<题目链接> 题目大意: 一个由数字构成的大矩阵,开始是全0,能进行两种操作1) 对矩阵里的某个数加上一个整数(可正可负)2) 查询某个子矩阵里所有数字的和要求对每次查询,输出结果 解题分析: 二维树状数组模板题,需要注意的是,由于题目给的x,y坐标可以为0,所以我们应该将这些点的坐标全部+1,然后
阅读全文
posted @ 2018-10-16 22:26
悠悠呦~
阅读(178)
推荐(0)
摘要:
<题目链接> 题目大意: 题目给出n个点,这些点按照y坐标的升序,若y相同,则按照x的升序顺序输入,问,在这些点中,左下角的点的数量分别在0~n-1的点分别有多少个,写出它们的对应点数。 解题分析: 因为所有点是按照y坐标的升序优先给出,所以后面的点y坐标一定大于等于前面的。于是,判断该点前面有多少
阅读全文
posted @ 2018-10-15 23:56
悠悠呦~
阅读(195)
推荐(0)
摘要:
<题目链接> 题目大意: 给出两个序列,a序列全部初始化为0,b序列为输入值。然后有两种操作,add x y就是把a数组[x,y]区间内全部+1,query x y是查询[x,y]区间内∑[ai/bi]。([ai/bi]代表ai/bi后向下取整) 解题分析: 首先,如果每次+1都暴力更新到每个叶子节
阅读全文
posted @ 2018-10-15 16:12
悠悠呦~
阅读(194)
推荐(0)
摘要:
<题目链接> 题目大意: 一个n*n的01矩阵,满足以下条件 1.X12+X13+...X1n=12.X1n+X2n+...Xn-1n=13.for each i (1<i<n), satisfies ∑Xki (1<=k<=n)=∑Xij (1<=j<=n). 另给出一个矩阵C,求∑Cij*Xij
阅读全文
posted @ 2018-10-14 23:17
悠悠呦~
阅读(257)
推荐(0)
摘要:
<题目链接> 题目大意: 给你一段序列,问你如果每次只交换该序列相邻的两个元素,最少需要交换多少步才能够使该序列变为升序排列。 解题分析: 不难发现,其实本题就是让我们求原始序列的逆序对,这里我们用树状数组求解。正常求解逆序数的方法无非就是按照原始序列的顺序向树状数组中加入每个元素的值,然后查询该树
阅读全文
posted @ 2018-10-14 21:15
悠悠呦~
阅读(211)
推荐(0)
posted @ 2018-10-13 23:13
悠悠呦~
阅读(5)
推荐(0)
摘要:
<题目链接> 题目大意: fqk 退役后开始补习文化课啦,于是他打开了数学必修一开始复习函数,他回想起了一次函数都是 f(x)=kx+b的形式,现在他给了你n个一次函数 fi(x)=kix+b,然后将给你m个操作,操作将以如下格式给出: 1.M i k b,把第i个函数改为 fi(x)=kx+b。
阅读全文
posted @ 2018-10-13 21:51
悠悠呦~
阅读(358)
推荐(0)
摘要:
<题目链接> 题目大意: 一些母牛按序号排成一条直线。有两种要求,A和B距离不得超过X,还有一种是C和D距离不得少于Y,问可能的最大距离。如果没有最大距离输出-1,如果1、n之间距离任意就输出-2,否则输出最大的距离。 解题分析:典型的差分约束,第一种约束,v-u<=c;第二种约束:v-u>=c 可
阅读全文
posted @ 2018-10-11 16:38
悠悠呦~
阅读(250)
推荐(0)
posted @ 2018-10-10 23:35
悠悠呦~
阅读(2)
推荐(0)
摘要:
<题目链接> <转载于 >>> > 题目大意:给出一串n个数字,让你在这串数字中添加k个 ' + ' 号(添加后表达式合法),然后所有拆分所得的所有合法表达式之和。 解题分析: 首先,暴力的做法肯定是不可行的,复杂度必然爆炸。然后来考虑怎么求每个数字在最终结果里的贡献呢。我们这n个数字有n-1个空位
阅读全文
posted @ 2018-10-09 20:34
悠悠呦~
阅读(609)
推荐(0)
摘要:
<题目链接> 题目大意: 给出a和b,如果一个数每一位都是a或b,那么我们称这个数为good,在good的基础上,如果这个数的每一位之和也是good,那么这个数是excellent。求长度为n的excellent数的个数mod(1e9+7)。 解题分析: 我们可以枚举a的个数m,所以b的个数为(n-
阅读全文
posted @ 2018-10-09 18:59
悠悠呦~
阅读(268)
推荐(0)
posted @ 2018-10-08 23:50
悠悠呦~
阅读(2)
推荐(0)
posted @ 2018-10-08 10:21
悠悠呦~
阅读(5)
推荐(0)
摘要:
<题目链接> 题目大意: XX星有许多城市,城市之间通过一种奇怪的高速公路SARS(Super Air Roam Structure 超级空中漫游结构)进行交流,每条SARS都对行驶在上面的Flycar限制了固定的Speed,同时XX星人对 Flycar的“舒适度”有特殊要求,即乘坐过程中最高速度与
阅读全文
posted @ 2018-10-07 22:59
悠悠呦~
阅读(192)
推荐(0)
摘要:
<题目链接> 题目大意: 给你一些点的坐标,要求你将这些点全部连起来,但是必须要包含某一条特殊的边,问你连起这些点的总最短距离是多少。 解题分析: 因为一定要包含那条边,我们就记录下那条边的边权,然后将那条边边权置为0,再跑一遍最小生成树即可。 2018-10-07
阅读全文
posted @ 2018-10-07 20:36
悠悠呦~
阅读(173)
推荐(0)
posted @ 2018-10-07 00:08
悠悠呦~
阅读(3)
推荐(0)
posted @ 2018-10-06 19:24
悠悠呦~
阅读(3)
推荐(0)
posted @ 2018-10-06 15:52
悠悠呦~
阅读(2)
推荐(0)
摘要:
<题目链接> qn姐姐最好了~ qn姐姐给你了一个长度为n的序列还有m次操作让你玩, 1 l r 询问区间[l,r]内的元素和 2 l r 询问区间[l,r]内的元素的平方 和 3 l r x 将区间[l,r]内的每一个元素都乘上x 4 l r x 将区间[l,r]内的每一个元素都加上x qn姐姐最
阅读全文
posted @ 2018-10-05 22:27
悠悠呦~
阅读(236)
推荐(0)
posted @ 2018-10-05 16:03
悠悠呦~
阅读(48)
推荐(0)