![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
洛谷
文章平均质量分 70
chenxiaoran666
人要有梦想,不然和咸鱼有什么区别!
展开
-
【洛谷3759】[TJOI2017] 不勤劳的图书管理员(树套树)
点此看题面大致题意: 给定一个序列,每个元素有两个属性aia_iai和viv_ivi,每次操作改变两个元素的位置,求每次操作后∑vi+vj[i<j,ai>aj]\sum{v_i+v_j}[i<j,a_i>a_j]∑vi+vj[i<j,ai>aj]。关于题意的解读其实,题目差不多就是让我们求逆序对(只不过每个逆序...原创 2018-10-27 15:49:41 · 335 阅读 · 0 评论 -
【洛谷4287】[SHOI2011] 双倍回文(Manacher算法经典题)
点此看题面大致题意: 求一个字符串中有多少个长度为偶数的回文串,它的一半也是回文串。ManacherManacherManacher算法这应该是ManacherManacherManacher算法一道比较好的入门题,强烈建议在做这题之前先去学一学ManacherManacherManacher算法。LinkLinkLinkManacherManacherManacher算法 详见博客...原创 2018-10-20 13:02:52 · 415 阅读 · 0 评论 -
【洛谷2264】情书(字符串水题)
点此看题面大致题意: 给你nnn个关键词和一个文本串。让你求出这些单词在这个文本串中总共出现次数(一句话中同一单词只算一次)。细节这题其实还是比较水的,一道很简单的TrieTrieTrie题(数据范围这么小,貌似暴力照样过),居然还能是一道蓝题。LinkLinkLinkTrieTrieTrie 详见博客 Trie:字典树但是,这题还是有很多细节的,大体如下:关键词在一句话中的...原创 2018-10-20 13:02:40 · 294 阅读 · 0 评论 -
【洛谷1273】有线电视网(树上背包)
点此看题面大致题意: 给你一棵带权树,已知每连接一条边需要一定花费,如果某个叶节点能到达根,可以获得一定收益。问在不亏本的情况下,最多能使多少个叶节点能到达根。树上背包这是一道比较经典的树上背包题。LinkLinkLink树上背包 详见博客 动态规划专题(二)——树形DP如何记录状态我们可以用fi,jf_{i,j}fi,j表示在以iii为根的子树内选择jjj个叶节点能得到的...原创 2018-10-20 13:02:23 · 244 阅读 · 0 评论 -
【洛谷4252】[NOI2006] 聪明的导游(提答题)
点此看题面大致题意: 给你一张nnn个点、mmm条边的无向图,让你找出图上的一条不经过重复节点的最长路(提答+spjspjspj)。随机化乱搞针对这种提答题,我们就要用随机化乱搞(Cptraser大佬说他可以直接O(n2)O(n^2)O(n2)求出答案%%% )。首先,我们随机一个节点作为起点。然后,我们从这个节点出发,每次选择一个还没有访问过且**度数较小(这可以通过随机化实现)**...原创 2018-10-07 11:55:15 · 300 阅读 · 0 评论 -
【洛谷1110】[ZJOI2007] 报表统计(两棵平衡树)
点此看题面大致题意: 有一个序列,三种操作。INSERTINSERTINSERT操作是在原数列第i+1i+1i+1个元素之前插入一个新元素kkk,MINMINMIN_GAPGAPGAP操作是查询相邻两个元素的之间差值的最小值,MINMINMIN _SORTSORTSORT _GAPGAPGAP操作是查询所有元素中最接近的两个元素的差值。两棵平衡树这道题我们可以用两棵TreapTreapTr...原创 2018-10-14 08:22:04 · 172 阅读 · 0 评论 -
【洛谷3953】逛公园(最短路+记忆化搜索)
点此看题面大致题意: 有一张有NNN个点和MMM条边组成的有向图,若从111号点到NNN号点的最短路径长度为ddd,问有多少条从111号点到NNN号点的路径长度不超过d+Kd+Kd+K。若有无数条输出−1-1−1。第一步:最短路既然要求的是长度不超过d+Kd+Kd+K的路径条数,显然我们要先求出ddd,因此就需要跑一遍最短路。但是,最短路怎么跑也是有学问的。第一个最容易想到的办法应该是...原创 2018-10-03 20:03:54 · 251 阅读 · 0 评论 -
【洛谷3709】大爷的字符串题(离散化+莫队)
点此看题面大致题意:算法标签——语文,给定一个数列,多组询问,每次询问一个区间内的众数出现的次数。莫队这道题的算法应该是莫队。LinkLinkLink莫队算法详见博客莫队算法学习笔记(一)——普通莫队如何用莫队求解此题我们可以用cntcntcnt数组记录下每个数出现的次数(注意要先离散化),用tottottot数组记录下每个数在cntcntcnt数组中的出现次数,并用ansa...原创 2018-09-26 20:21:47 · 180 阅读 · 0 评论 -
【洛谷1967】货车运输(最大生成树+倍增LCA)
点此看题面大致题意: 有nnn个城市和mmm条道路,每条道路有一个限重。多组询问,每次询问从xxx到yyy的最大载重为多少。一个贪心的想法首先,让我们来贪心一波。由于要求最大载重,显然要让最小限重尽量大。不难发现,想要让最小限重尽量大,所经过的路径一定都在原图的最大生成树上。于是,我们就可以用求最大生成树的方法来将原图转化为一棵树。这样一来,原题就转化成了求树上两点之间的最小边权值...原创 2018-09-20 12:40:39 · 190 阅读 · 0 评论 -
【洛谷3232】[HNOI2013] 游走(贪心+高斯消元)
点此看题面大致题意:一个无向连通图,小ZZZ从111号顶点出发,每次随机选择某条边走到下一个顶点,并将ansansans加上这条边的编号,走到NNN号顶点时结束。请你对边进行编号,使总分期望值最小。一个贪心的思想由于贪心的思想,我们肯定是给期望访问次数最大的边编号为111,第二大的编号为222,第三大的编号为333,以此类推。那么我们应该怎么求出边的期望呢?由于边的期望...原创 2018-09-16 20:35:58 · 169 阅读 · 0 评论 -
【洛谷2051】[AHOI2009] 中国象棋(烦人的动态规划)
点此看题面大致题意: 让你在一张N∗MN*MN∗M的棋盘上摆放炮,使其无法互相攻击,问有多少种摆法。辟谣听某大佬说这是一道**状压DPDPDP**题,于是兴冲冲地去做,看完数据范围彻底懵了:N≤100N≤100N≤100!这么大的数据范围压死你!好吧,其实这就是一道普通的DPDPDP,与状压没有任何关系。其实状压可以用来骗分,能得50。考虑性质对于这种题目,第一步肯定是考虑有没有...原创 2018-10-20 15:49:13 · 230 阅读 · 0 评论 -
【洛谷2519】[HAOI2011] problem a(动态规划)
点此看题面大致题意: 一次考试共有nnn个人参加,第iii个人说有aia_iai个人分数比他高,bib_ibi个人分数比他低。求最少有几个人说谎。动态规划刚看完题目可以说是一头雾水。仔细想想,可以把每个人的状态转化为一个区间([ai+1,n−bi][a_i+1,n-b_i][ai+1,n−bi]),表示这个区间内所有元素都相等。那么我们要求的就是求出最大的区间数MaxMaxMa...原创 2018-10-25 14:08:50 · 223 阅读 · 0 评论 -
【洛谷2152】[SDOI2009] SuperGCD(Python好题)
点此看题面大致题意: 给你两个长度≤10000\le10000≤10000的正整数,让你求它们的gcdgcdgcd。Python高精请绕道。这题的正解应该是Python。对于这种高精题,肯定是Python最方便了。于是我就默默写了Python。代码n=(int)(input())#读入第一个整数m=(int)(input())#读入第二个整数while n!=m:#辗转相...原创 2018-10-25 16:08:14 · 392 阅读 · 2 评论 -
【洛谷2633】Count on a tree(树上主席树)
点此看题面大致题意: 给你一棵树,每次问你两点之间第kkk小的点权,强制在线。主席树这种题目强制在线一般就是数据结构了。而看到区间第kkk小,很容易就能想到主席树。至少不会有人想到树套树。LinkLinkLink主席树 详见博客 可持久化专题(一)——浅谈主席树:可持久化线段树树上主席树与一般的主席树不同,这题的主席树是树上主席树(不过许多奆佬称其为主席树上树)。维护数...原创 2018-10-27 14:58:11 · 338 阅读 · 0 评论 -
【洛谷2468】[SDOI2010] 粟粟的书架(二合一)
点此看题面大致题意: 问你选取一个矩形区间内至少几个数,才能使它们的和≥Hi\ge H_i≥Hi。二合一根据数据范围,比较显然能看出它是一道二合一的题目。对于第一种情况,R,C≤200R,C\le 200R,C≤200,我们可以用前缀和+二分去做。而对于另一种情况,R=1,C≤500000R=1,C\le500000R=1,C≤500000,就需要使用主席树了。LinkLinkL...原创 2018-10-27 12:04:41 · 172 阅读 · 0 评论 -
【洛谷3157】[CQOI2011] 动态逆序对(CDQ分治)
点此看题面大致题意: 给你一个从111到nnn的排列,问你每次删去一个元素后剩余的逆序对个数。关于808080分的树套树为了练树套树,我找到了这道题目。但悲剧的是,我的**线段树套TreapTreapTreap**被卡了!只得了808080分。LinkLinkLink线段树套TreapTreapTreap 详见博客 初学树套树:线段树套Treap其实这个做法思路还是比较简单的,...原创 2018-10-26 22:43:12 · 268 阅读 · 0 评论 -
【洛谷2664】树上游戏(点分治)
点此看题面大致题意: 给定一棵树,每个节点有一个颜色,定义s(i,j)s(i,j)s(i,j)为iii到jjj路径上颜色数量,请你对于每一个iii求出∑i=1ns(i,j)\sum_{i=1}^n s(i,j)∑i=1ns(i,j)。点分治这种题目比较显然是点分治吧… …LinkLinkLink点分治 详见博客 初学点分治大致思路首先,按照点分治的基本套路,对于一棵子树内的...原创 2018-10-25 22:25:10 · 247 阅读 · 0 评论 -
【洛谷1613】跑路(倍增+最短路)
点此看题面大致题意: 小AAA要从111号节点到nnn号节点,已知他每个单位时间可以跑2k2^k2k千米,求他最少需要多少个单位时间。预处理由于数据范围较小,我们可以先大力预处理。首先,将题目中给出的边边权初始化为000。若从一点出发,到两点皆有一条边权为kkk的边,就将这两点之间连一条边权为k+1k+1k+1的边。这样重复nnn次,就能保证所有该连的边都连好了。SPFASPFA...原创 2018-10-21 14:07:02 · 203 阅读 · 0 评论 -
【洛谷4149】[IOI2011] Race(点分治)
点此看题面大致题意: 给你一棵树,问长度为KKK的路径至少由几条边构成。点分治这题应该比较显然是点分治。LinkLinkLink点分治 详见博客 初学点分治主要思路与常见的点分治套路一样,由于K≤1000000K≤1000000K≤1000000,因此我们可以考虑开个桶fff数组来记录每种长度的路径至少由几条边构成。但是要注意,每换一个根要将桶清空!呃,暴力清空肯定TTT...原创 2018-10-21 13:49:58 · 204 阅读 · 0 评论 -
【洛谷2257】YY的GCD(莫比乌斯反演)
点此看题面大致题意: 求∑x=1N∑y=1MIsPrime(gcd(x,y))\sum_{x=1}^N\sum_{y=1}^MIsPrime(gcd(x,y))∑x=1N∑y=1MIsPrime(gcd(x,y))。莫比乌斯反演听说此题是莫比乌斯反演入门题?LinkLinkLink莫比乌斯反演 详见博客 初学莫比乌斯反演一些定义首先,我们可以定义f(d)f(d)f(d)和...原创 2018-10-25 19:40:33 · 340 阅读 · 0 评论 -
【洛谷2216】[HAOI2007] 理想的正方形(二维RMQ)
点此看题面大致题意: 求出一个矩阵中所有n∗nn*nn∗n正方形中极差的最小值。另一种做法听说这题可以用单调队列去做,但是我写了一个二维RMQRMQRMQ。二维RMQRMQRMQRMQRMQRMQ相信大家都会的,而 二维RMQRMQRMQ 其实与普通RMQRMQRMQ是没什么区别的。我们可以用Maxi,j,kMax_{i,j,k}Maxi,j,k来表示(i,j)∼(i+2k,j+...原创 2018-10-21 12:40:59 · 187 阅读 · 0 评论 -
【洛谷2577】[ZJOI2005] 午餐(较水DP)
点此看题面大致题意: 有NNN个学生去食堂打饭,每个学生有两个属性:打饭时间aia_iai和吃饭时间bib_ibi。现要求将这些学生分成两队分别打饭,求最早何时所有人吃完饭。贪心首先,依据贪心的思想,肯定是吃饭时间长的先打饭,因此可以将其按吃饭时间先排序预处理一遍。如何DPDPDP贪心完,就是DPDPDP了。个人认为三维DPDPDP还是非常好想的:用fi,j,kf_{i,j,k...原创 2018-10-21 12:35:34 · 196 阅读 · 0 评论 -
【洛谷2801】教主的魔法(分块经典入门题)
点此看题面大致题意:给你一个序列,要你支持两种操作:第一种是区间加法,第二种是查询区间内大于等于xxx的数的个数。考虑分块这应该是一道比较经典的分块入门题吧。首先,我们将序列分块。对于修改操作,暴力修改两边的不完整的块,中间的块直接打标记记录即可。对于询问操作,暴力求出两边的不完整的块的答案,中间的块我们可以在块内二分,最后将全部答案加起来即可。代码...原创 2018-09-16 14:11:08 · 343 阅读 · 0 评论 -
【洛谷3396】哈希冲突(大力分块)
点此看题面大致题意:给你一个长度为nnn的数组valvalval以及mmm个操作,操作有两种:一种是将valxvalxval_x修改为yyy,另一种操作是求出∑vali(i∑vali(i\sum val_i(i%x=y)x=y)x=y)。朴素的暴力我们先来写一个朴素的暴力,代码如下:int main(){ register int i,Q,x,y,ans;regi...原创 2018-09-11 13:05:09 · 345 阅读 · 0 评论 -
【洛谷1341】无序字母对(欧拉回路)
点此看题面大致题意:给你nnn个各不相同的无序字母对(注意:两个字母可能相同,被这个坑了好几次),请构造一个长度为n+1n+1n+1的字符串包含每个字母对。这是一道裸的欧拉回路,只不过是字符串版的,步骤较经典版略显麻烦。依照欧拉回路的思路,我们先统计出每个字母出现的次数。然后对其中奇点的个数分类讨论:若没有奇点:则可以从任意一个点开始遍历。由于题目中要求字典序最小,所以从字典序最小...原创 2018-07-29 18:54:59 · 328 阅读 · 0 评论 -
【洛谷2279】[HNOI2003] 消防局的设立(贪心)
点此看题面 大致题意:给你NNN个点(其中111号点为根),并告诉你编号为2∼N2∼N2\sim N的点的父亲(fa[i]<ifa[i]<ifa[i]原创 2018-07-28 19:58:42 · 174 阅读 · 0 评论 -
【洛谷1337】[JSOI2004] 吊打XXX(模拟退火经典题)
点此看题面大致题意:一个平面上有nnn个点,每个点有1个权值,现在要选择平面上的一个点,使这nnn个点的权值乘上到达选定点的距离之和最小。我们可以用模拟退火来做这道题。先将(0,0)(0,0)(0,0)设定为答案,随后不断选取一个新的坐标,比较选择该点时的代价与当前答案的代价。若小于当前答案的代价,则更新答案,否则,将有一定概率更新答案(更新答案的概率随时间的增大以及两个代价之差的增大...原创 2018-07-28 18:20:41 · 633 阅读 · 0 评论 -
【洛谷2403】[SDOI2010] 所驼门王的宝藏(Tarjan+dfs遍历)
点此看题面大致题意:一个由R∗CR∗CR*C间矩形宫室组成的宫殿中的NNN间宫室里埋藏着宝藏。由一间宫室到达另一间宫室只能通过传送门,且只有埋有宝藏的宫室才有传送门。传送门分为3种,分别可以到达同行的任一宫室(横天门)、同列的任一宫室(纵寰门)和以该宫室为中心周围8个的任一宫室(自由门)。现在你可以从任一宫室开始寻宝,并可以在任一宫室结束寻宝,请求出最多可获得的宝藏数目(每个宝藏只能获得一次)...原创 2018-07-28 17:56:00 · 558 阅读 · 0 评论 -
【洛谷1494】[国家集训队] 小Z的袜子(莫队)
点此看题面原创 2018-07-28 14:46:58 · 441 阅读 · 0 评论 -
【洛谷2709】小B的询问(莫队模板题)
点此看题面原创 2018-07-27 19:35:13 · 702 阅读 · 0 评论 -
【洛谷3959】宝藏(随机算法乱搞)
点此看题面原创 2018-07-27 19:19:57 · 401 阅读 · 0 评论 -
【洛谷】CYJian的水题大赛 解题报告
点此进入比赛T1:八百标兵奔北坡这应该是一道较水的送分题吧。 理论上来说,正解应该是DP。但是,.前缀和优化暴力就能过。 放上我比赛时打的暴力代码吧(hl666hl666hl666大佬说这种做法的均摊复杂度为O(logn)O(logn)O(logn),总复杂度应为O(nlogn)O(nlogn)O(nlogn),可以接受):#include<bits/stdc++.h&amp原创 2018-07-27 18:55:27 · 608 阅读 · 0 评论 -
【洛谷2827】蚯蚓(单调队列+三路归并)
点此看题面 大致题意:有n只长度为自然数(可能为0)的蚯蚓,每一秒会将最长的蚯蚓切成两半:长度分别为⌊px⌋⌊px⌋\lfloor px \rfloor 和x−⌊px⌋x−⌊px⌋x - \lfloor px \rfloor(长度为0的蚯蚓也会被保留),此外,除了刚产生的两只蚯蚓,其余蚯蚓的长度都会增加q,现在要你求出m秒内每一秒被切断的蚯蚓在被切断前的长度和m秒后所有蚯蚓的长度(从大到小)。 ...原创 2018-07-20 20:32:42 · 333 阅读 · 0 评论 -
【洛谷1120】小木棍(一道有技巧的dfs)
点此看题面 大致题意:给你NNN根小木棍,请你把它们拼成若干根长度相同的木棍,问你最小可能长度。 显然的,木棍的长度肯定是∑ni=1len[i]∑i=1nlen[i]\sum_{i=1}^n len[i]的一个因数,且肯定大于max(len[i])max(len[i])max(len[i])。因此,我们只要在这个范围内枚举答案并用dfsdfsdfs来验证即可。 另外,只要找到一个答案,我们就...原创 2018-08-05 19:32:08 · 606 阅读 · 0 评论 -
【洛谷1486】[NOI2004] 郁闷的出纳员(Splay的小运用)
点此看题面原创 2018-08-07 17:36:10 · 901 阅读 · 0 评论 -
【洛谷3796】【模板】AC自动机(加强版)
点此看题面 大致题意:一道模板题,给你NNN个模式串和一个文本串,要你求出在文本串中出现次数最多的若干个模式串并输出它们。 都说了是ACACAC自动机的模板题,做法肯定是ACACAC自动机。 Link ACACAC自动机详见博客字符串匹配(三)——初学AC自动机我们可以考虑在将每个模式串插入TrieTrieTrie后,记录下每个模式串最后到达的节点。 然后,在ACAC...原创 2018-08-20 19:01:49 · 274 阅读 · 0 评论 -
【洛谷4009】汽车加油行驶问题(SPFA乱搞)
点此看题面大致题意:给定一个N∗NN∗NN*N的方形网格,其中1表示这个格子有油库,0表示这个格子没油库,且汽车加满油可以行驶kkk条网格边。如果遇到油库必须加满油并花费AAA元,如果XXX坐标或YYY坐标减少需花费BBB元,若需新建一个油库需花费CCC元(另需加油费AAA元)。问你从(1,1)(1,1)(1,1)到(N,N)(N,N)(N,N)的最少花费。SPFASPFASPFA...原创 2018-08-28 11:20:56 · 301 阅读 · 0 评论 -
【洛谷1290】欧几里德的游戏(博弈论)
点此看题面大致题意:给定两个正整数,从StanStanStan开始,每次将两个数中较大的数减去较小数的正整数倍(得到数不能小于0),然后是OllieOllieOllie进行同样操作。若谁先得到0谁就胜利,请你求出谁会取得胜利。分类讨论这一看就是博弈论题。我们可以用w(x,y)w(x,y)w(x,y)来表示两个数分别为xxx和yyy时的获胜情况(设x≥yx≥yx≥y),并设a...原创 2018-08-28 07:53:01 · 1246 阅读 · 2 评论 -
【洛谷1993】小K的农场(差分约束系统模板题)
点此看题面原创 2018-08-27 10:07:23 · 318 阅读 · 0 评论 -
【洛谷3275】[SCOI2011] 糖果(差分约束系统入门题)
点此看题面 大致题意:有NNN个小朋友,要求每个人都得到糖果,且每个人的糖果总数满足一定的关系式,请你求出至少共分给小朋友们多少糖果。关系式的转换首先,我们可以将题目中给定的式子进行转换: 1. A=BA=BA=B:这个式子可以拆成A≥BA≥BA≥B和B≥AB≥AB≥A,再转换一下就变成了A−B≥0A−B≥0A-B≥0和B−A≥0B−A≥0B-A≥0 2. A<BA&lt原创 2018-08-27 09:40:45 · 489 阅读 · 1 评论