随笔分类 - 数据结构
摘要:题目分析: 首先考虑暴力 每次更新一个人的微信步数的时候,一起更新他的朋友圈,时间复杂度O(n*n) ,显然无法接受 考虑分块 因为m(边数)小于200000,所以度数超过sqrt(n)的点不会超过sqrt(n)个,我们定义这个界值为top 再定义: 如果一个点的的度数大于top,定义为大点 否则
阅读全文
摘要:今天学长刚刚总结的一类题型 给出了两道例题,一道是CF220B 另一个是牛客的这道; 题意(CF220B): 每次询问区间[L,R]有多少个数x出现了刚好x次 题意(牛客): 每次询问[L,R]有多少数字,a[i]满足和区间内的其他数都互质 Trick: 自己总结了一下这样的题的一个算是一个通用的t
阅读全文
摘要:又是向杨大佬学习的一天 Gene Tree题目大意: 求树上所有叶子节点距离的平方和 就是求上面这个式子 小 Q 与树 题目大意: 求上面这个式子 这两个题挺相似的,如果都考虑朴素做法的话,都是两层for枚举两个节点,复杂度已经到n^2了 所以考虑树上点分治,一种logn的复杂度解决树上静态询问的问
阅读全文
摘要:题目大意: 给你一颗树,每次求树上两点简单路径的交点个数 题目思路: 其实第一反应是lca,但是写了好多种情况并没有发现什么规律, 然后想用线段树维护个dfs序看序列里相同的数字的个数,但是dfs的顺序好像回影响答案,因为操作的是一个子树, 都到这里了,可以直接树剖,因为树剖时剖的时轻重链,可以利用
阅读全文
摘要:牛客练习赛81B-小Q与彼岸花: 题目大意: 给你n(n<=5000)个数和m(m<=5000)个询问,每次询问区间[L,R]中两个数的异或最大值是多少 题目思路: 因为这里的数据范围完全可以n^2写,所以我们对每次询问都对区间[L,R]的数建立一颗01字典树 把一个数转化为二进制后,从高位往树上插
阅读全文
摘要:题目大意: 给你一个序列和m次询问,每次询问区间[L,R]求这个区间的最小划分,使得每个划分的子串乘积和=LCM 题目思路: step1: 先从最简单的思路开始,首先要保证一个区间的乘积和等于LCM,那么这个区间的任意两个数都是互质的 考虑暴力的扩展区间,从[L,R]扩展到[L,R+1]的时候,扫一
阅读全文
摘要:题目大意: 每次询问一个区间,将这个区间尽可能少的划分为几个子区间是的出现次数最多的那个数字不超过limit limit = len/2(上取整,len为区间长度) 推导: 假设(为例)区间长度是8,那么limit = 4 那么出现次数大于4的数字如果有的话,有且只有一种 假设这种数字出现了x次 那
阅读全文
摘要:题目大意: 给你一个序列,一些查询 每次查询区间[L,R]中出现次数大于T的最小的a[i]是多少 题目思路: 一眼主席树 但是这个题目在于如何用好这个条件 2 ≤ k ≤ 5 假设这个序列长度是1000,k=5 那么就是找出现次数大于200的,但是这样的数字最多有多少个呢? 很明显 不会超过k个 然
阅读全文
摘要:题目大意: 就像人类喜欢跳格子游戏一样,FJ的奶牛们发明了一种新的跳格子游戏。虽然这种接近一吨的笨拙的动物玩跳格子游戏几乎总是不愉快地结束,但是这并没有阻止奶牛们在每天下午参加跳格子游戏 游戏在一个R*C的网格上进行,每个格子有一个取值在1-k之间的整数标号,奶牛开始在左上角的格子,目的是通过若干次
阅读全文
摘要:题目描述 A group of people are standing in a line. Each person has a distinct height. You would like to count the number of unordered pairs of people in t
阅读全文
摘要:题目大意: 给你一个排列,所有的逆序对的颜色不能相同,问最少用几种颜色并输出方案数字 题目思路: 因为逆序对是具有传递关系的 排列 3 2 1 如果3用颜色1 那么2就得用颜色2 因为1和3也有逆序关系,所以,1不能用2和1,所以1用3 容易发现 对于a[i]我们只需要找到在[a[i],max_nu
阅读全文
摘要:题目大意: 给你n个数字,m个询问,每次询问[l,r] 求[l,r]这个区间内的数不能够构成的最小正整数(下文称其为区间Mex(并不是严格的区间Mex)) 题目思路: 我们逐步解决这个问题 Q1: 如何计算一个区间的MEX ? 假设当前区间[L,R]能够表示的数是[1,x]此时mex = x+1 然
阅读全文
摘要:题目大意: n个点,m条边,q个询问 每次给出k个能用的点,把不能用的点的连接的边删除后问有几个联通块 (k[i]的和小于n) 题目思路: 好妙啊~~~,还有点卡常 首先考虑暴力做法 一号暴力选手 对于每次询问,如果我们对给出的点两两合并 假设一次给出n个点,复杂度最坏为O(n*n*q) [这时候q
阅读全文

浙公网安备 33010602011771号