![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法竞赛进阶指南
Frozen_Guardian
已退役菜鸡Acmer
展开
-
POJ - 3468 A Simple Problem with Integers(分块)
题目链接:点击查看题目大意:给出一个长度为 n 的数列,再给出 m 次操作,每次操作分为两种情况:C l r d:区间 [ l , r ] 内的数字都加上 d Q l r :查询 [ l , r ] 内的区间和题目分析:分块的做法比较直观,将长度为 n 的数列分为 sqrt( n ) 个长度为 sqrt( n ) 的独立部分,对于查询和修改:如果 l 和 r 位于同一个部分内,则直接遍历即可 如果 l 和 r 位于不同的部分内:记 ll 和 rr 分别为第几个部分 遍历 [ ll + .原创 2020-05-23 18:00:52 · 268 阅读 · 0 评论 -
洛谷 - P4168 [Violet]蒲公英(分块+离散化)
题目链接:点击查看题目大意:给出一个长度为 n 的数列,再给出 m 次查询,每次查询区间 [ l , r ] 内的众数,要求强制在线题目分析:对于这个题意来说,如果允许离线的话,完全可以用莫队当模板题水过去,但强制在线的话就需要考虑如何分块了这里只讲一下如何实现大蓝书上的第二个方法吧首先设将数列 n 分成 T 块,每块的长度为 n / T ,接下来可以预处理出 mode[ l ][ r ] ,代表包含第 l 块到第 r 块在内的这段区间上的众数是多少,时间复杂度为 O( nT) ,空间复杂.原创 2020-05-24 02:14:21 · 418 阅读 · 0 评论 -
2019ICPC(银川) - Delivery Route(强连通缩点+分块最短路)
题目链接:点击查看题目大意:给出n个点和m条边构成的图,每条边都有权值,其中m1条边是双向的,且权值非负,有m2条边是单向的,且权值可负,现在要求从给定起点st到其他每个点的最短路,若不存在路径则输出NO PATH题目分析:看似很简单的单源最短路的题目,因为存在了负边权导致无法直接用迪杰斯特拉解决,又因为这个题目的数据经过了特殊构造,所以SPFA也会超时,只能另想办法解决这个题目的特点...原创 2020-01-07 19:27:25 · 670 阅读 · 0 评论 -
POJ - 1041 John's trip(欧拉回路)
题目链接:点击查看题目大意:给出一张无向图,要求从起点开始遍历一遍所有的边,最后再回到起点,题目要求输出任意一组方案细节:起点不是点1,而是第一条边中两个端点中娇小的一个点 给出的x y z代表的是点x到点y由id为z的边连接 最后答案要求输出的是边的id题目分析:欧拉回路模板题,不过是开一个vis数组用来记录id的访问情况就好了,明明感觉这个题用邻接表更好写,为什么网上那么多人...原创 2019-12-27 00:26:53 · 254 阅读 · 0 评论 -
POJ - 3683 Priest John's Busiest Day(2-SAT+路径打印)
题目链接:点击查看题目大意:现在有n对新人要结婚,每一场婚礼都要请牧师主持一个特殊的仪式,这个仪式必须在婚礼的前d分钟或者最后d分钟进行,现在问能否有一种安排,能让牧师参加到每一场婚礼去主持仪式,输出方案题目分析:也是一个2-SAT模板题,只是路径打印有点不好理解,我们可以将两个赋值拆成前d分钟主持仪式和后d分钟主持仪式,这样每个点都有两种赋值情况了,并且我们可以预先储存n场婚礼的时间,随...原创 2019-12-26 19:47:01 · 250 阅读 · 0 评论 -
POJ - 2942 Knights of the Round Table(点双缩点+二分图判定)
题目链接:点击查看题目大意:国王要在圆桌上召开骑士会议,但是有若干对骑士之间互相憎恨。出于各种各样奇怪的原因,每次开会都必须有以下要求:相互憎恨的两个骑士不能坐在相邻的两个位置 为了让投票表决议题时都能有结果(不平票),出席会议的骑士数必须是奇数如果有某个骑士无法出席任何会议,则国王会为了世界和平把他踢出骑士团。现在给定n个骑士和m个憎恨关系,求出至少需要踢掉多少个骑士题目分析:很...原创 2019-12-25 19:40:21 · 213 阅读 · 0 评论 -
POJ - 2230 Watchcow(欧拉图)
题目链接:点击查看题目大意:给出一张由n个点和m条边组成的无向图,要求我们从点1为起点,沿着每条路都走一遍,正向边反向边都走恰好一次,最后到点1结束,题目需要我们输出路径题目分析:欧拉图模板题目,因为题目中保证了给出的图一定时欧拉图,而欧拉图的定义是每个点的度数都是偶数,意思就是只要到达一个节点,那么就必定有一条尚未走过的边可以离开该点,所以我们可以不断用dfs搜索,并标记已经走过的边,实...原创 2019-12-25 23:23:50 · 227 阅读 · 0 评论 -
POJ - 3678 Katu Puzzle(2-SAT)
题目链接:点击查看题目大意:给出n个数字,以及m个关系,每个关系只可能是xor、and或or其中之一,问能否有一种赋值满足所有m个关系题目分析:2-SAT模板题,因为每个关系中的a和b都有一定的关系,比如a and b=0,就要求a和b中至少有一个数为0,换句话说,如果a为1,那么b必定为0,反过来也是一样,若b为1,则a也必定为0,形如这样的关系我们就可以利用2-SAT建边,然后强连通缩...原创 2019-12-26 15:11:05 · 234 阅读 · 0 评论 -
POJ - 1236 Network of Schools(强连通缩点)
题目链接:点击查看题目大意:一个学校连接在一个计算机网络上,学校之间存在软件支援协议,每个学校都有它应支援的学校名单(学校A支援学校B,并不表示学校B一定支援学校A)。当某校获得一个新软件时,无论是直接获得还是通过网络获得,该校都应立即将这个软件通过网络传送给它应支援的学校,因此,一个新软件若想让所有学校都能使用,只需将其提供给一些学校即可:最少需要将一个新软件直接提供给多少个学校,才能使...原创 2019-12-24 12:14:45 · 183 阅读 · 0 评论 -
POJ - 1966 Cable TV Network(最小割-最大流)
题目链接:点击查看题目大意:给定一张无向图,求最少去掉多少个点,可以使图不连通题目分析:让图不连通,也就是让图分成两个部分,这样题目就转换成了最小割的问题了,不过最小割问题是要求最小割边,所以我们需要将每个点都拆成一个入点i和一个出点i+n,其边权为1,然后给出的无向边u->v,可以表示为u+n->v和v+n->u,边权为无穷大,这样建完边后,我们还是不确定该怎么将图分成...原创 2019-12-10 17:06:17 · 199 阅读 · 0 评论 -
POJ - 1201 Intervals(差分约束+最短路)
题目链接:点击查看题目大意:给定n个闭区间[ai,bi]和n个整数ci,你需要构造一个整数集合Z,使得Z中满足所有的ai<=x<=bi的整数不少于ci个,求出这样的整数集合Z最少包含多少个数题目分析:因为这个题目的数最多只有5e4个,我们可以设一个函数S[k],表示0~k中最少选出多少个整数才能满足题意,则我们可以写出约束方程:S[bi]-S[ai-1]>=ci,满足...原创 2019-12-10 15:13:14 · 298 阅读 · 0 评论 -
CH - 6201 走廊泼水节(最小生成树,水题)
题目链接:点击查看题目大意:给定一棵N个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树(增加的边权必须大于最小生成树上这两个点的边权),求增加的边的边权总和的最小值是多少题目分析:一开始给出的树题目规定了就是最小生成树,若使用Kruskal算法辅助的话,那么每一次我们匹配的两个点肯定不在一个集合中,所以我们假设每次的两个集合中的点数为S[x]和S[y...原创 2019-12-06 12:03:05 · 292 阅读 · 1 评论 -
POJ - 3613 Cow Relays(Floyd思想+矩阵快速幂+动态规划)
题目链接:点击查看题目大意:给定一张由T(T<=100)条边构成的无向图,点的编号为1~1000,之间的整数,求从起点S到终点E恰好经过N(N<=1e6)条边(可重复经过)的最短路题目分析:虽然点的编号在1e3以内,却只有100条边,我们可以离散化,这样最多只需要一个200*200的邻接矩阵就可以维护了,离散化后我们考虑maze储存了邻接矩阵,则dp[i][j]=min(maz...原创 2019-12-06 11:16:16 · 334 阅读 · 0 评论 -
POJ - 1734 Sightseeing trip(最小环+输出路径)
题目链接:点击查看题目大意:给定一张无向图,求图中至少一个包含三个点的环,环上的节点不重复,并且环上的边的长度之和最小。该问题称为无向图的最小环问题。在本题中,你需要输出最小环的方案,若最小环不唯一,输出任意一个均可。若无解,输出“No solution.”。图的节点数不超过100题目分析: 最小环的模板题,因为floyd实质上是阶段性dp,所以我们可以在每个阶段都判断一次,具体的判断方法...原创 2019-12-06 01:00:49 · 342 阅读 · 0 评论 -
POJ - 1094 Sorting It All Out(拓扑排序+floyd传递闭包)
题目链接:点击查看题目大意:给出N个点以及M个比较关系,问在第几个数字可以确定出唯一的序列,或者判断出矛盾的序列,或者最后也无法确定出一个唯一的序列题目分析:关于这个题目可以直接分类讨论,可以直接用拓扑排序判环,判断是否有唯一确定的顺序,这里我用floyd写了一下,可以直接传递闭包,然后根据题目的条件来判断是否有唯一答案,在确定了唯一答案之后就可以跑一边拓扑序输出答案了有个小坑需要注意...原创 2019-12-05 23:34:09 · 289 阅读 · 1 评论 -
POJ - 3662 Telephone Lines(分层图最短路)
题目链接:点击查看题目大意:在郊区有N座通信基站,P条双向电缆,第i条电缆连接基站Ai和Bi。特别的,1号基站是通信公司的总站,N号基站位于一座农场中。现在,农场主希望对通信线路进行升级,其中升级第i条电缆需要花费Li电话公司正在举行优惠活动,农场主可以指定一条从1号基站到N号基站的路径,并指定路径上不超过K条电缆,由电话公司免费提供升级服务,农场主只需要支付在该路径上剩余的电缆中,升级价...原创 2019-12-05 12:32:35 · 525 阅读 · 0 评论 -
POJ - 3179 Corral the Cows(离散化+二分+二维前缀和)
题目链接:点击查看题目大意:在二维平面中给出n个点,每个位置都有一个一个三叶草,现在需要求出一个长方形区域,要求长方形边长最短,并且面积内部包含至少C个三叶草题目分析:题目给出的n最大为500,但是x和y达到了1e5,肯定不能直接维护前缀和,我们只能离散化一下,然后维护一个500*500的前缀和,因为要求的矩阵区域是正方形,所以我们可以直接二分长方形的边长,然后每次最多500*500的时间...原创 2019-12-04 23:52:52 · 389 阅读 · 0 评论 -
CH - 0805 防线(二分+思维)
题目链接:点击查看题目大意:假设现在有一个数轴,一共有n组防具,每组防具给出的形式为S,D,E,在数轴上的分布为:S,S+D,S+2D....S+KD,保证S+KD<=E现在规定数轴上某个点有偶数个防具是稳定的,有奇数个防具是不稳定的,0因为也是偶数,所以0也是稳定的,题目保证数轴上最多有一个不稳定的点,现在问这个不稳定点的位置,以及有多少个防具题目分析:因为这个题目保证了最多只...原创 2019-12-03 18:20:29 · 267 阅读 · 0 评论 -
POJ - 3714 Raid(平面最近点对模板题,几何)
题目链接:点击查看题目大意:给出两个含有n个点的集合,在两个集合中分别任选一点,使得这两个点之间的距离最小题目分析:因为n给到了1e5,所以n*n的暴力肯定是不行了,直接从网上copy了个分治优化的模板,时间复杂度为nlogn,可以求出n个点中相距最近的两个点的距离,对于这个题目而言,我们将两个集合中的点分个类,在求距离的时候,若是同类的点,直接返回无穷大即可,这样同类的点肯定不可能是答案...原创 2019-12-03 17:24:09 · 231 阅读 · 0 评论 -
POJ - 2083 Fractal(dfs,递归画图)
题目链接:点击查看题目大意:给出一个n,要求递归画图题目分析:重点就是设计递归啦,也没什么好说的,因为题目保证了n小于等于7,然后矩阵的大小为3^(n-1)*3^(n-1)所以矩阵最大不超过729*729,可以预先开好一个二维数组,储存好全是空格,然后递归的时候只需要对于X进行绘制就好了,观察一下需要绘制的图形,我们大体可以分成五个部分,然后直接写就好啦。。代码:#include...原创 2019-12-01 18:57:01 · 459 阅读 · 0 评论 -
POJ - 2965 The Pilots Brothers' refrigerator(bfs+路径输出/思维+位运算)
题目链接:点击查看题目大意:给出一个4*4的矩阵,每个点都代表一个开关,'+'代表关,'-'代表开,每次操作可以任意改变一个开关(x,y)的状态,但代价是x行和y列的开关都要一起改变状态,题目要求将所有的开关都打开,问最少操作次数以及哪些点需要操作题目分析:思维不够,暴力来凑,看到这个题目只有4*4=16个格子,也就是一共只有2^16种情况,直接上bfs遍历所有状态就好了,可以用一个数字保...原创 2019-12-03 14:50:36 · 234 阅读 · 0 评论 -
POJ - 1220 NUMBER BASE CONVERSION(高精度运算+进制转换+模拟)
题目链接:点击查看题目大意:给出两个进制x和y,再给出一个x进制下的数num,求num转换为y进制后的答案题目分析:直接套模板就行了,进制转换没什么好说的,直接模拟,这个题开了加速外挂只能优化几十ms,最后还是跑了400多ms,应该是大数的板子不够快,不过够用就好了。。后面会学java的唯一值得吐槽的就是,这不就是银川现场赛的原题吗?然后这个题的数据比较水,大数的N开到150就能A了...原创 2019-12-03 02:17:08 · 281 阅读 · 0 评论 -
CH - 0701 国王游戏(贪心+高精度运算)
题目链接:点击查看题目大意:恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 n 位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。国王不希...原创 2019-12-03 00:37:40 · 502 阅读 · 0 评论 -
POJ - 1328 Radar Installation(贪心+思维)
题目链接:点击查看题目大意:校长想通过监控设备覆盖学校内的N座建筑物,每座建筑物被视作一个质点,在笛卡尔坐标系中给出他们的坐标(x,y),并且所有建筑物均处在x轴的上方。因为学校的供电和传输线路均沿x轴,所以监控设备只被允许建立在x轴上,每台监控设备的监控范围均为一个半径为R的圆形,圆心即为这台设备。现在给出N座建筑物的坐标,问:最少需要几台这样的设备可以实现对所有建筑物的监控?题目分析:...原创 2019-12-02 20:17:49 · 344 阅读 · 0 评论 -
POJ - 3190 Stall Reservations(贪心+优先队列优化)
题目链接:点击查看题目大意:有n头牛在畜栏中吃草,每个畜栏在同一时间段只能提供给一头牛吃草,所以可能会需要多个畜栏,给定N头牛和每头牛开始吃草和结束吃草的时间,每头牛在给定时间段内会一直吃草,求需要的最小畜栏数目和每头牛对应的畜栏方案题目分析:如果这个题目不要求方案的话,我是想用差分来做的,对于每个时间段我们让其中的数量+1,最后跑一遍前缀和答案就出来了,但是这个题让求方案,再用差分的话就...原创 2019-12-02 18:55:55 · 223 阅读 · 0 评论 -
CH - 0601 Genius ACM(倍增+归并排序)
题目链接:点击查看题目大意:给定一个正整数M,对于任意一个整数集合S,定义“检验值”如下:从集合S中取出M对数(即2*M个数,不能重复使用集合中的数,如果S中的整数不够M对,则取到不能取为止),使得“每对数的差的平方”之和最大,这个最大值就称为集合S的“检验值”现在给定一个长度为N的数列A以及一个整数T,我们要把A分成若干段,使得每一段的“检验值”都不超过T,求最少要分成几段题...原创 2019-12-02 17:08:07 · 319 阅读 · 0 评论 -
POJ - 2893 M × N Puzzle(n*m数码问题+逆序对结论)
题目链接:点击查看题目大意:给出一个n*m的数码问题,问是否能到达最终状态题目分析:对于数码问题,我们先一步一步分析,先简单看一下定义:八数码的问题描述为:在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用0来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局(初始状态)和目标布局,找到一种最少步骤的移动方法,实现从初始布局到...原创 2019-11-30 04:08:38 · 637 阅读 · 3 评论 -
POJ - 2299 Ultra-QuickSort(线段树+离散化/归并排序)
题目链接:点击查看题目大意:给出n个数字,求使用冒泡排序所需要交换的次数题目分析:这个题n给到了5e5,如果直接冒泡排序的话,的时间复杂度肯定就TLE了,所以不能直接暴力模拟我们换个思路,这个题其实需要转化一下,就是求每个位置上数字的逆序数,然后加和就是所要求的答案了因为相对较大的数字经过排序后要往右边移动,而任意位置的一个数字所要移动的距离就是他的逆序数,即需要和每一个他右边...原创 2019-08-04 15:02:55 · 314 阅读 · 0 评论 -
POJ - 3784 Running Median(动态维护中位数)
题目链接:点击查看题目大意:给出n个数,依次读入一个整数序列,每当已经读入的整数个数为奇数时,输出已读入的整数构成的序列的中位数题目分析:动态维护中位数,我们可以直接用两个二叉堆来维护,一个是小顶堆,一个是大顶堆,让大顶堆在中位数左侧,让小顶堆在中位数右侧,两个二叉堆堆顶相接拼起来,因为每次需要询问的是奇数时候的中位数,所以每次的中位数一定是确定的,这个时候我们可以将当前中位数保存在大顶堆...原创 2019-11-29 13:12:26 · 329 阅读 · 0 评论 -
CH - 6802 車的放置(二分图最大匹配)
题目链接:点击查看题目大意:给出一个n*m的棋盘,其中有t个点是禁止放置的,我们需要在其余的点上尽可能多的放置车,并且互不冲突,车的攻击规则和中国象棋中的车一样,只能攻击同一行和同一列中的所有棋子,问满足的情况下最多能放多少车题目分析:首先对于每一个车,我们只能放在(x,y)这样一个点,并不能既放在x1行,也放在x2行,所以这样行和列就组成了一个二分图,我们对于所有可以放置的点对其行和列建...原创 2019-11-20 11:59:47 · 247 阅读 · 0 评论 -
POJ - 1273 Drainage Ditches(最大流)
题目链接:点击查看题目大意:现在一共有n个节点,需要修建m条水渠将池塘的水引入小溪,点1代表池塘,点n代表小溪,每条水渠都有一定的排水能力,问最大的排水效率是多少题目分析:网络流的模板题,直接套板子就行了代码:#include<iostream>#include<cstdlib>#include<string>#include<cs...原创 2019-11-22 11:21:16 · 253 阅读 · 0 评论 -
POJ - 3422 Kaka's Matrix Travels(网络流-最大费用最大流+拆点法)
题目链接:点击查看题目大意:K取方格数,是在一个N*N的矩形网格中,每个格子里都写着一个整数。可以从左上角到右下角安排K条路线,每一步只能往下或往右,沿途经过的格子中的整数会被取走。若多条路线重复经过一个格子,只取一次。求能取得的整数的和最大是多少题目分析:因为涉及到权值问题,我们希望权值最大,所以这就是一个费用流问题了,具体一下就是最大费用的最大流问题,具体该怎么设计呢,网络流基本上就是...原创 2019-11-22 00:33:52 · 213 阅读 · 0 评论 -
POJ - 3614 Sunscreen(贪心/二分图最大匹配-多重匹配/网络流-最大流)
题目链接:点击查看题目大意:给出n头奶牛,奶牛们现在要晒太阳,每头奶牛需要[l,r]区间内的光照强度,现在有m种防晒霜,每种防晒霜可以让奶牛接受到val数值的光照强度,然后每种防晒霜只有num个,现在问在合理分配防晒霜后,最多能有多少头奶牛可以晒太阳题目分析:一开始是想贪心做的,但是无奈不会,想了一会知道是排序但不知道怎么排,又观察了一下这个题目,发现就是个二分图多重匹配问题啊,让奶牛去匹...原创 2019-11-21 13:28:34 · 463 阅读 · 0 评论 -
CH - 6803 导弹防御塔(二分图最大匹配-多重匹配(拆点法))
题目链接:点击查看题目大意:给出n个炮塔,再给出m个敌人,每个炮塔都可以持续发射导弹,不过发射导弹的时间是t1秒,炮塔冷却的时间是t2分钟,炮弹飞行的速度是v,炮塔和敌人之间的距离按照欧几里得距离计算,现在要求清除完所有敌人的最小时间(分钟)题目分析:因为这个题目满足二分的基本条件,也就是在时间比较大的时候,也肯定是可以清除掉所有敌人的,所以我们可以二分一下清除所有敌人所用的时间,现在的问...原创 2019-11-20 16:14:33 · 323 阅读 · 0 评论 -
CH - 6901 骑士放置(二分图最大独立集-二分图最大匹配+奇偶拆点)
题目链接:点击查看题目大意:给出一个n*m的棋盘,有t个点是禁止放棋子的,现在按照马走日的规则,问在互不影响的情况下最多能放多少个马题目分析:这里首先简单介绍一下二分图最大独立集的定义:通俗来讲,图的独立集就是“任意两点之间都没有边相连”的点集。包含点数最多的一个就是图的最大独立集公式:顶点数-最大匹配数这样一来,因为马走日的规则也满足奇偶拆点的规则,所以在这个题目中我们可...原创 2019-11-20 20:02:04 · 344 阅读 · 2 评论 -
CH - 0501 货仓选址(中位数)
题目链接:点击查看题目大意:在一条数轴上有N家商店,它们的坐标分别为 A[1]~A[N]。现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品。为了提高效率,求把货仓建在何处,可以使得货仓到每家商店的距离之和最小。题目分析:中位数应用最经典的问题之一了,我们设应该将货仓建立在坐标X处,现在X左边有P家商店,X右边有Q家商店,我们需要尽可能的让P=Q才是最优解这样问题...原创 2019-11-29 02:50:31 · 361 阅读 · 0 评论 -
CH - 0502 七夕祭(思维+中位数优化+前缀和优化)
题目链接:点击查看题目大意:七夕节因牛郎织女的传说而被扣上了「情人节」的帽子。于是TYVJ今年举办了一次线下七夕祭。Vani同学今年成功邀请到了cl同学陪他来共度七夕,于是他们决定去TYVJ七夕祭游玩。TYVJ七夕祭和11区的夏祭的形式很像。矩形的祭典会场由N排M列共计N×M个摊点组成。虽然摊点种类繁多,不过cl只对其中的一部分摊点感兴趣,比如章鱼烧、苹果糖、棉花糖、射的屋……什么的。Va...原创 2019-11-29 02:37:32 · 380 阅读 · 0 评论 -
CodeForces - 670C Cinema(离散化+排序/map,水题)
题目链接:点击查看题目大意:有m部正在上映的电影,每部电影的语音和字幕都采用不同的语言,用一个int范围内的整数来表示语言。有n个人相约在一起去看其中一部电影,每个人只会一种语言,如果一个人能听懂电影的语音,他会很高兴,如果他能看懂字幕,他会比较高兴,如果语音和字母都看不懂,他会不开心,现在要求我们选择一部电影让这n个人一起看,使很高兴的人数最多,若答案不唯一,则在此条件下再让比较高兴的人最多...原创 2019-11-28 18:15:56 · 416 阅读 · 0 评论 -
AcWing - 113 特殊排序(归并排序/二分)
题目链接:点击查看题目大意:现在给出n*(n-1)/2个关系表示n个数中两两之间的关系大小,用函数表示就是compare(a,b),若a<b,则返回值为true,否则返回值为false,要求我们编写一个类用来还原数组,并要求最多访问10*N次compare函数题目分析:时间复杂度既然要求了10*N,那么首先就要想到nlogn,这个题目中的n给到了1e3,logn不超过10,所以满足时...原创 2019-11-28 17:00:51 · 310 阅读 · 0 评论 -
POJ - 2018 Best Cow Fences(二分+最长连续子段和)
题目链接:点击查看题目大意:给出n个正整数,求一个平均数最大的、长度不小于L的连续子段题目分析:因为这个题目的答案满足二分的性质,也就是若二分的平均数小于答案,则更小的平均数肯定都满足答案(因为这个连续子段的平均值肯定大于那些答案),如果二分的平均数大于答案,则更大的平均数肯定都不满足答案(同上),所以我们可以直接二分平均值作为答案,现在问题转换成了该怎么判断当前二分的答案是否满足条件,也...原创 2019-11-28 14:31:49 · 471 阅读 · 3 评论