OI/ACM之动态规划与递推
OI/ACM动态规划
「已注销」
前oi选手。
重庆市南开中学高2020级毕业生。
重庆大学计算机系2020级学生。
QQ1954486214欢迎添加讨论~
展开
-
最长上升子序列LIS的应用
文章目录一、最长上升子序列1.暴力DP2.优化二、LIS的应用1.LIS的应用2.应用加强一、最长上升子序列1.暴力DP考虑如下问题:给定长度为n\large nn的序列A={a1,a2,...,an}\large A=\{a_1,a_2,...,a_n\}A={a1,a2,...,an}(稍加注意,此处的{}并不是集合符号,而是描述一种顺序序列)若存在序列满足∀A′⊂A\large \forall A'\subset A∀A′⊂A,∀ai,aj∈A′,s.t. ai原创 2021-05-29 20:04:05 · 210 阅读 · 1 评论 -
BZOJ P3887 [USACO15JAN]草鉴定Grass Cownoisseur 【Tarjan缩点】【DAG最长路】
差不多是板子了:#include <cmath>#include <queue>#include <cstdio>#include <vector>#include <cstring>#include <iostream>#include <algorithm>#define ll long lon原创 2018-09-20 21:58:53 · 234 阅读 · 0 评论 -
BZOJ「POI2007」堆积木Klo【动态规划】【树状数组优化DP】
题目分析: 这道题还是很容易想到暴力的DP状态与转移:DP[I]表示第I个在自己位置上时的最大值,显然:DP[I]=max{DP[J]}+1,其中:1)J&amp;amp;lt;I2)Num[J]&amp;amp;lt;Num[I]3)J-Num[J]&amp;amp;lt;=I-Num[I] 所以现在来考虑一下优化: 不难发现,我们通过2)3)可以推导出1),所以我们不妨以2)3)为关键字进行排序,排完序后...原创 2018-06-21 18:33:08 · 338 阅读 · 0 评论 -
BZOJ P1233 干草堆tower 【单调队列优化DP】
题目分析:我们用F[I]表示用第I~N包做草堆的时候最底下一层的最短长度,G[I]记录此时能到达的最高高度,显然可以得到如下的一个状态转移方程: 由于这样的做法时间复杂度是n^2,所以我们考虑优化DP。我们注意到F[I]的值总是只与Sum[J-1]-Sum[I-1]的大小有关,也就是我们只需要考虑能够更新答案,能够发生状态转移的话那么必须满足下面的式子: 稍微变一下形: 通过...原创 2018-05-31 01:50:01 · 395 阅读 · 0 评论 -
BZOJ P1003 LOJ P2311 物流运输【最短路】【动态规划】
题目分析: 做这道题非常尴尬的是在我看了样例之后我才知道我最开始把题目读错了。 先来说说这道题的解题思路。由于并不知道什么时候修改航线,所以我们用动态规划来解决。DP[I]表示前I天的最小花费,于是我们得到如下的状态转移方程,其中Cost[I][J]表示第I天到第J天固定航线后的最小花费: 那么现在问题变成了如何求出Cost(I,J),我们在上面已经说了Cost(I,J)表示的是第I天后...原创 2018-05-26 15:10:30 · 147 阅读 · 0 评论 -
LOJ P507 「LibreOJ NOI Round #1」接竹竿【动态规划】
题目分析:这仍然是一道显然的DP题。首先由于取出一段区间的要求是这段区间的两个端点是一样的,所以我们可以考虑用类似于链式前向星的方法储存相同端点的到达。由数据范围,考虑定一个一维的状态,一维的状态始终是十分好定的:DP[I]表示前I张扑克处理后能够得到的最大得分接下来考虑一下转移:对于第I张照片,有可以取出计分与不去出计分两种情况。若第I张照片不取出计分,则DP[I]...原创 2018-06-15 01:01:59 · 674 阅读 · 1 评论 -
BZOJ P4562 LOJ P2060 [HAOI2016] 食物链【记忆化搜索】
题目分析:题意比较明确:给出一个有向图,求入度为0的点到出度为0的点的路径条数。题目也很简单,就是一道简单的记忆化搜索。我们用DP[I]表示从I号点出发的路径条数,那么状态转移方程也很容易得到(其中J为I出发下一步可以到达的点): 参考代码:#include &amp;amp;amp;lt;cmath&amp;amp;amp;gt;#include &amp;amp;amp;lt;cstdio&amp;amp;amp;g原创 2018-05-29 19:00:54 · 258 阅读 · 0 评论 -
BZOJ 3717 Pakowanie【状态压缩】
题目分析: “什么?你和我说这道题1&amp;amp;amp;amp;amp;lt;&amp;amp;amp;amp;amp;lt;24是状态压缩?” “你仔细看一下题。” “等等,时限…90s?太好了,我可以卡评测机了。” 好吧事实证明我没有那个能力卡评测机,最后我被常数卡了。 我们用F[I]表示前I个物品最后用I个几个包,G[I]表示最后一个包的剩余体积。于是这道题就可以直接用状态压缩水过去了-&amp;amp;amp;amp;amp;gt;.-原创 2018-05-27 14:12:48 · 307 阅读 · 0 评论 -
BZOJ P1072 排列perm【状态压缩】
题目分析: 最开始做这道题的时候第一反应就是直接用全排列扫一遍,假设最长的数串长度为最长,也就是10,那么时间复杂度最坏是(10!*15)=(54432000),想着这样的时间复杂度在BZOJ的三元评测机上交说不准就超时了,就没有这样写全排列(不过据说这道题确实可以next_permutation扫一遍,中间用set判重,不过我不会set,改天学一下)。 所以最后我还是用了状态压缩来做,这道题...原创 2018-05-26 13:29:31 · 310 阅读 · 0 评论 -
BZOJ P4033 LOJ 2124 [HAOI2015] 树上染色【树形DP+背包】
题目分析:树形DP(好吧这是废话)。我们按照树形DP的套路(啥?你不知道树形DP的套路?)很容易得出这道题的状态设定:DP[I][J]表示以I为根的子树当中涂了J个黑点的最大收益,J&amp;amp;amp;amp;lt;=K那么问题来了,我们应该如何进行状态转移,关键点在于应该如何处理状态转移时发生的收益变化?让我们来考虑这样一个问题:树上一条边X-&amp;amp;amp;amp;gt;Y,在X外(包括X点)一共有P个黑点,那么在Y...原创 2018-06-17 13:32:31 · 399 阅读 · 0 评论 -
BZOJ P4472 salesman【树形DP】【挖坑】
题目分析:这道题一共两个问题,第一个问题求最大收益直接用树形DP求解即可,第二个问题想了很久还是无解,看了网上大神的题解仍然没有过多说明是如何判断多解的情况(也就是下面参考代码的G[]数组),想了很久也仍然没有特别理解,所以第二问先挖一个坑,来讲一讲第一个问的做法。首先我们来考虑一下题目当中的限制次数都含义,我们会如何经过一个点呢?一个就是从父亲节点下来,还有就是从儿子节点上来,显然对于一...原创 2018-06-17 16:28:37 · 266 阅读 · 0 评论 -
NKOJ P2455 [东方幻想乡]【动态规划】
题外话: 这道题….考试的时候我居然没有做出来….没有做出来….我硬生生想了半天二维状态我推不走…..然后正解是一维…..也确实不难…..这就很难受了…..我已经好几道一维DP我完全想成二维推不走了….. 其实就是一个简单的动态规划了….写这篇题解来悔过一下吧….. 首先我们要求出每个点过平行于已知直线的在y轴上的交点,不妨设已知直线的斜率为K,某个点的坐标为(P,Q)...原创 2018-07-09 20:44:57 · 217 阅读 · 0 评论 -
NKOJ P4969 抗议 【离散化】【树状数组优化动态规划】
题目描述 约翰家的NNN头奶牛正在排队游行抗议。一些奶牛情绪激动,约翰测算下来,排在第iii位的奶牛的理智度为AiAiA_i,数字可正可负。 约翰希望奶牛在抗议时保持理性,为此,他打算将这条队伍分割成几个小组,每个抗议小组的理智度之和必须大于或等于零。奶牛的队伍已经固定了前后顺序,所以不能交换它们的位置,所以分在一个小组里的奶牛必须是连续位置的。除此之外,分组多少组,每组分多少奶牛,...原创 2018-07-16 11:01:34 · 214 阅读 · 0 评论 -
LOJ #2612「NOIP2013」花匠【动态规划】
这道题LOJLOJLOJ上加强了数据范围然呢并没有什么用。DP[I][0]DP[I][0]DP[I][0]表示前III株可以留下的最大的株数,其中J&lt;I,H[J]&gt;H[I]J&lt;I,H[J]&gt;H[I]JH[I]; DP[I][1]DP[I][1]DP[I][1]表示前III株可以留下的最大的株数,其中J&lt;I,H[J]&lt;H[I]J&lt;I,H[J]&原创 2018-07-16 20:03:35 · 234 阅读 · 0 评论 -
LOJ #2500「NOIP2014」飞扬的小鸟【背包DP】
好吧我也是一个智障了最开始完全没有思路重新读题发现题目读漏了一个条件:每个单位时间可以点击多次屏幕,也就意味着你可以从(x,y)(x,y)(x,y)跳到多个(x+1,yi)(x+1,yi)(x+1,y_i),那么不就是背包了么。DP(I,J)DP(I,J)DP(I,J)表示跳到坐标(I,J)(I,J)(I,J)的最少步数,对于iii,我们可以先假设iii处没有障碍,那么背包处理所有点,然后再把...原创 2018-07-17 12:54:39 · 215 阅读 · 0 评论 -
NKOJ P4250 「NOIP模拟」小区划分【动态规划】
是的考试的时候这道题我又爆掉了…. 这道题不难但是我考试的时候边界条件写错了只有40分….. 很简单的一个状态设定:DP[I][J]DP[I][J]DP[I][J]表示每一边的前III个一共划分成了JJJ个小区,那么很容易得到一个状态转移方程: DP(I,K)=max(DP(I,K),DP(J,K−1)+fabs((Sum1[I]−Sum1[J])−(Sum2[I]−Sum2[J])))DP...原创 2018-07-11 11:30:37 · 312 阅读 · 0 评论 -
BZO 5450: 轰炸【缩点】【动态规划】
题目描述 战狂也在玩《魔方王国》。他只会征兵而不会建城市,因此他决定对小奇的城市进行轰炸。 小奇有nnn座城市,城市之间建立了mmm条有向的地下通道。战狂会发起若干轮轰炸,每轮可以轰炸任意多个城市。 每座城市里都有战狂部署的间谍,在城市遭遇轰炸时,它们会通过地下通道撤离至其它城市。非常不幸的是,在地道里无法得知其它城市是否被轰炸,如果存在两个不同的城市 iii,jjj,它们在同...原创 2018-07-12 19:49:18 · 1399 阅读 · 0 评论 -
NKOJ P3680 「NOIP模拟」分队问题【动态规划】
这道题读完第一反应就是贪心,将所有的要求都从大到小排序后优先把要求最高的人放在一起然后考虑下一个新队,参考代码:sort(Ask+1,Ask+1+N,Cmp);for(I=1;I&amp;lt;=N;I+=Ask[I]){ Ans++; }Write(Ans);但是实际在我提交WAWAWA了一遍之后,我才意识到这样贪心的做法是有可能存在误解的情况的,比如: 1&amp;nbsp;&amp;nb...原创 2018-07-13 14:52:23 · 239 阅读 · 0 评论 -
BZOJ P1911 [APIO2010] 特别行动队【Riypo的第一道斜率优化】【已更新】
设f[i]f[i]f[i]表示只考虑前iii个数的最大值,Sum[]Sum[]Sum[]表示前缀和,F(x)=ax2+bx+cF(x)=ax2+bx+cF(x)=ax^2+bx+c显然: f[i]=f[j]+F(Sum[i]−Sum[j])&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;1≤j≤i原创 2018-07-25 12:20:51 · 181 阅读 · 0 评论 -
HDU P2089 不要62【数位DP】
应该是数位DPDPDP的板题了吧。DP[I][J]DP[I][J]DP[I][J]表示JJJ开头的III位数满足条件的个数,容易得到: DP[I][J]=∑DP[I−1][K],′J′!=4,′JK′!=62DP[I][J]=∑DP[I−1][K],′J′!=4,′JK′!=62DP[I][J]=\sum DP[I-1][K],'J'!=4,'JK'!=62 最后统计答案:AnsiAnsi...原创 2018-07-25 22:18:38 · 130 阅读 · 0 评论 -
BZOJ P3892 [Usaco2014 Dec] Marathon【动态规划】
这道题呢当时做的时候确实没有想到其他做法只想到了暴力动态规划,但是评测的时候居然AAA了就十分惊讶。其实做完这道题之后想一想为什么暴力这么高的时间复杂度可以AAA掉,我们平时在计算时间复杂度的时候都是从最坏情况的角度考虑而往往忽略了实际当中的时间复杂度,显然这道题的暴力方程的最坏时间复杂度十分大的,但是它的常数其实远远小于111,这就是为什么我们的暴力动态规划可以AAA掉这道题的原因了。参考代...原创 2018-07-15 21:37:51 · 297 阅读 · 0 评论 -
NKOJ P2076「NOIP模拟」家庭作业【单调队列优化动态规划】【二分答案】
题目描述 HZHZ HZ 的作业共有NN N道题,每道题需要titit_i的时间来完成,HZHZHZ只有TTT的时间来做作业,HZHZHZ会选择一些题空着,但是空太多了老师会生气滴……老师的生气程度为HZHZHZ最长连续空着的题数。 现在,HZHZHZ想知道,老师的生气程度最小能是多少?二分一个答案值xxx,表示当前限制的老师最小生气程度为xxxf[i]f[i]f[i]表示...原创 2018-08-09 11:32:30 · 423 阅读 · 0 评论 -
NKOJ P1654 [东方幻想乡] 琪露诺【单调队列优化DP】
看到有人居然有人说不会写DPDPDP这道题,然后写了一个分块OrzOrzOrzOrzOrzOrz。f[i]f[i]f[i]表示考虑前iii个石头可以得到的最大值,所以一个很显然的方程: f[i]=max f[j]+a[i],i−R≤i≤i−Lf[i]=max f[j]+a[i],i−R≤i≤i−Lf[i]=max\ f[j]+a[i],i-R\leq i\leq i-L...原创 2018-08-10 09:37:54 · 234 阅读 · 0 评论 -
LOJ #10147「NOI1995」石子合并 LOJ #10148「NOIP2006」能量项链【区间DP入门】
这是一道区间DPDPDP的入门题。之所以写这篇题解大概还是因为很久没有写区间DPDPDP了有些生疏。由于是圆形放置所以肯定要拉成线性,就×2×2×2即可。然后先考虑最小值。f[i][j]f[i][j]f[i][j]表示合并i−&amp;amp;gt;j(i+1≤j≤n+i−1)i−&amp;amp;gt;j(i+1≤j≤n+i−1)i-&amp;gt;j(i+1\leq j\leq n+i-1)的最小代价。那么根据区间DPDP...原创 2018-08-04 16:31:13 · 258 阅读 · 2 评论 -
NKOJ P1752 传球游戏【状态压缩】
题目描述 nnn个人在做传球的游戏,编号为1−n1−n1-n。 游戏规则是这样的:开始时球可以在任意一人手上,他可把球传递给其他人中的任意一位;下一个人可以传递给未接过球的任意一人。 即球只能经过同一个人一次,而且每次传递过程都有一个代价;不同的人传给不同的人的代价值之间没有联系; 求当球经过所有nnn个人后,整个过程的最小总代价是多少。输入格式 第一行为n...原创 2018-08-10 20:02:14 · 252 阅读 · 0 评论 -
BZOJ P2071 「POI2004」过桥【状态压缩】
问题描述 一只队伍在爬山时碰到了雪崩,他们在逃跑时遇到了一座桥,他们要尽快的过桥. 桥已经很旧了, 所以它不能承受太重的东西. 任何时候队伍在桥上的人都不能超过一定的限制. 所以这只队伍过桥时只能分批过,当一组全部过去时,下一组才能接着过. 队伍里每个人过桥都需要特定的时间,当一批队员过桥时时间应该算走得最慢的那一个,每个人也有特定的重量, 我们想知道如何分批过桥能使总时...原创 2018-08-10 20:20:39 · 301 阅读 · 0 评论 -
BZOJ P1617 [Usaco2008 Mar] 渡河问题【动态规划】
我又来水题解了。Cost[i]Cost[i]Cost[i]表示一次运送iii头牛过河的时间,显然Cost[0]=mCost[0]=mCost[0]=m。 DP[i]DP[i]DP[i]表示运送iii头牛过河并返回所需要的最小时间,答案为DP[n]−Cost[0]DP[n]−Cost[0]DP[n]-Cost[0] DP[i]=min(DP[j]+Cost[i−j]+Cost[0]),0≤j...原创 2018-08-07 03:04:32 · 286 阅读 · 0 评论 -
UVa P10817 校长的烦恼【背包DP】【状态压缩】
f[S1][S2]f[S1][S2]f[S_1][S_2]表示达到S1S1S_1与S2S2S_2状态的最少花费,其中: S1S1S_1的二进制位表示某一门课程是否已经有一个老师教, S2S2S_2的二进制位表示某一门课程是否已经有两个老师教。设当前老师能教的课程用二进制表示为PPP,那么: 第一门课程现在的状态就更新为:A=S1|PA=S1|PA=S_1|P 第二门课程现在的状...原创 2018-08-11 11:28:13 · 272 阅读 · 1 评论 -
NKOJ P3500 独立集【动态规划】
很有意思的一道题了。首先冒泡排序当且仅当两个数是逆序的时候才会移动,也就是有边相连,那么对于一个独立集,一定是满足两两之间不存在逆序关系,也就是独立集的数在原序列当中一定是一个上升的子序列。所以第一问就是让我们求序列的最长上升子序列的长度。由于最大独立集不唯一,也就是可能会有多个最长上升子序列,那么如何才能判断当前数字一定在所有的最长上升子序列中呢?如果一个点不是唯一的,那么这个点就可...原创 2018-08-07 14:19:18 · 269 阅读 · 0 评论 -
LOJ #2316「NOIP2017」逛公园【最短路】【记忆化搜索】
dis[i]dis[i]dis[i]表示111号点到iii号点的最短距离,用spfaspfaspfa跑一遍即可。考虑如何设定状态。注意到题意要的是小于dis[n]+Kdis[n]+Kdis[n]+K的路径数量,而在我们跑完spfaspfaspfa之后dis[n]dis[n]dis[n]就是一个常数,而KKK的范围就比较和谐≤50≤50\leq 50,所以状态从这里入手。f[i][j]f...原创 2018-08-07 15:08:53 · 381 阅读 · 0 评论 -
LOJ #10152「NOIP2007」 矩阵取数游戏【区间DP】【高精度】
容易发现,单独考虑每一行的取数方案与其他行互不影响,所以我们可以通过单独考虑每一行最后累加答案进行求解。f[i][j]f[i][j]f[i][j]表示消除当前行[i,j][i,j][i,j]的最大得分,考虑每一个数合并到左区间或者右区间得到如下的状态转移方程:f[i][j]=max{f[i][j−1]∗2+w[j],w[i]+f[i+1][j]∗2}f[i][j]=max{f[i][j...原创 2018-08-15 04:33:58 · 288 阅读 · 0 评论 -
NKOJ P3662 [usaco 2004 dec gold] 划区灌溉【单调队列优化DP】
首先对于奶牛要求的[Si,Ei][Si,Ei][S_i,E_i],由于不能被不同的喷灌器喷灌,所以我们在处理的时候考虑用开区间(Si,Ei)(Si,Ei)(S_i,E_i)DP[i]DP[i]DP[i]表示当覆盖区间为[1,i][1,i][1,i]时用的最少的喷灌器的数量, DP[i]=min(DP[j])+1,A≤i−j2≤BDP[i]=min(DP[j])+1,A≤i−j2≤BDP[i]...原创 2018-08-08 04:34:04 · 214 阅读 · 0 评论 -
BZOJ P1725 [Usaco2006 Nov] 牧场的安排【状态压缩】
问题描述 Farmer John买了一片土地,可以表示为一片由方块组成的网格,长度为M,宽度为N(1 &lt;= M, N &lt;= 12)。现在FJ要在地里种上一些玉米让他的奶牛们直接在地里食用。FJ知道他的这片土地有些地方很贫瘠,没有办法种玉米;并且奶牛们不喜欢挨在一起吃玉米,所以不能在相邻的两块地上种玉米。请帮助FJ计算一下所有可能的种玉米的方案数。注意,结果输出对于100,000...原创 2018-08-13 04:39:31 · 297 阅读 · 0 评论 -
LOJ P6433 BZOJ P5369「PKUSC2018」最大前缀和【状态压缩】
OrzOrzOrzOrzOrzOrz想了几天都只想到一半,看大佬们的题解(看完大佬的题解我又要开始转变代码风格了)还看了很久,如果我现场做估计已经跪掉了。首先,考虑对于答案的计算。设maximaximax_i表示第iii种排列的最大前缀和,由于一共有n!n!n!个排列,所以最后的答案就应该为: Ans=(max1n!+max2n!+...+maxn!n!)∗n!Ans=(max1n!+m...原创 2018-08-13 13:32:45 · 343 阅读 · 0 评论 -
NKOJ P1824 [USACO3.1.6] 邮票【背包DP】
显然这是一道背包DPDPDP。但是这道题不是朴素的010101与无穷,因为题目规定了对于NNN种物品一共最多用KKK次,所以我们是无法通过一般的背包模型来完成这道题的。但是这道题始终有背包DPDPDP的感觉,那么我们不妨就从背包的角度来想想这道题。由于朴素的背包定义的为:f[i]f[i]f[i]表示能否填充使得空间(价值)恰好为iii,对应的转移方程:f[i]=f[i−v[j]...原创 2018-08-13 20:27:08 · 157 阅读 · 0 评论 -
LOJ P2292 BZOJ P4897「THUSC2016」成绩单【区间DP】【离散化】
又是一道神仙题,我还是太菜了不看题解完全写不出来,其实想到了怎么定状态之后还是比较容易推下去的。首先思考一下数据范围:n≤50n≤50n\leq 50,而最极端的时间复杂度是:O(n5)O(n5)O(n^5),所以我们在定状态的时候就不要担心数组维数过大,放心去做吧。g[i][j]g[i][j]g[i][j]表示消除区间[i,j][i,j][i,j]的最小代价。f[l][r][a][b...原创 2018-08-13 23:16:51 · 328 阅读 · 0 评论 -
NKOJ 4974 「NOIP模拟」乌鸦坐飞机【倍增优化DP】
题目描述 qqq只乌鸦要坐机到同一个地方看阿福揍扁成成龙!坐飞机就要到飞机场,一共nnn个飞机场构成了一棵树,编号为111到nnn,其中111号点是所有乌鸦的目的地,所以可以把飞机场的结构视为一棵以111号点为根的有根树。坐飞机就要买飞机票,每个机场都只售111种飞机票,我们用v,dv,dv,d两个参数描述一张飞机票,表示这张飞机票售价为vvv,可以让乌鸦飞到从当前机场到111号机场的路径...原创 2018-08-16 16:48:21 · 523 阅读 · 0 评论 -
LOJ P2510 BZOJ P5290「AHOI / HNOI2018」道路【树形DP】【记忆化搜索】
感谢hdhd大佬的讨论,然后大佬瞬间秒掉了这道题。我们用LSon[x],RSon[x]LSon[x],RSon[x]LSon[x],RSon[x]分别表示xxx的公路和铁路,然后Gre,RedGre,RedGre,Red表示当前叶子节点到达根节点的公路条数和铁路条数。f[x][Gre][Red]f[x][Gre][Red]f[x][Gre][Red]表示在xxx这个节点并且距离根节点有Gr...原创 2018-08-16 20:16:49 · 206 阅读 · 0 评论 -
Codeforces 865C Gotta Go Fast【二分答案】【期望DP】
题目描述 一个游戏一共有nnn个关卡,对于第iii关,用AiAiAi时间通过的概率为PiPiPi,用BiBiBi通过的时间为1−Pi1−Pi1-Pi,Ai<BiAi<BiAi000并从第一关开始,要求通过所有关卡的时间总和不能超过mmm才算完成通关任务,问完期望最少玩多长时间才能完成通关任务? 玩家非常聪明。f[i][j]f[i][j]f[i][j]表示到达第iii关,用...原创 2018-08-19 19:58:14 · 355 阅读 · 0 评论 -
Codeforces 1025D Recovering BST【区间DP】
g[i][j]g[i][j]g[i][j]表示点i,ji,ji,j能否连边:g[i][j]=gcd(vi,vj)==−1g[i][j]=gcd(vi,vj)==−1g[i][j]=gcd(v_i,v_j)==-1left[i][j]left[i][j]left[i][j]表示以jjj号点以左向左子树能否扩展到iii,right[i][j]right[i][j]right[i][j]表示以i...原创 2018-08-20 04:01:51 · 795 阅读 · 0 评论