
贪心
文章平均质量分 67
QuantAsk
蒟蒻OIer
展开
-
CF1427F-Boring Card Game【贪心】
我们考虑一下能不能求出哪些牌是在一次中取走的,这个取法很像一个括号匹配,也就是一次取走的东西中不会产生交叉,而如果不会产生交叉,那么我们按照括号匹配的找法去找也是对的。所以我们可以用一个栈存按顺序存牌,当栈顶三个颜色相同时就弹出这三个,表示这三个是在同一次中取走的。的根并且存在一个当前要取的颜色的叶子。我们找一下这个森林的性质,会发现每个节点的颜色都和父节点的不同,还有。的序列,两个人轮流操作,每次取走连续的三个数字。,那么此时取走随便一个不是最后一个根的。多,所以显然不合法,假设不成立。...原创 2022-08-10 21:04:08 · 314 阅读 · 0 评论 -
UOJ#749-[UNR #6]稳健型选手【贪心,分治,主席树】
题目链接:https://uoj.ac/problem/749如果有序列aaa,你每次取走一个数字后然后这个序列最前面的数字会被别人取走,直到序列为空。此时f(a)f(a)f(a)表示你最大能取走的权值和。给出一个长度为nnn的序列aaa,qqq次询问区间[l,r][l,r][l,r],求f(al∼r)f(a_{l\sim r})f(al∼r)。1≤n,q≤2×105,1≤ai≤1091\leq n,q\leq 2\times 10^5,1\leq a_i\leq 10^91≤n,q≤2×105,1≤ai原创 2022-08-08 21:56:28 · 255 阅读 · 0 评论 -
P6117-[JOI 2019 Final]コイン集め【贪心】
题目链接:https://www.luogu.com.cn/problem/P6117平面上有2n2n2n的硬币,要给每个硬币匹配一个x∈[1,n],y∈[1,2]x\in[1,n],y\in[1,2]x∈[1,n],y∈[1,2]的位置(不能重复)。使得所有硬币和它们匹配位置的曼哈顿距离之和最小。1≤n≤105,−109≤Xi,Yi≤1091\leq n\leq 10^5,-10^9\leq X_i,Y_i\leq 10^91≤n≤105,−109≤Xi,Yi≤109先把每个硬币先移进x∈[1,n],原创 2022-06-22 19:46:57 · 178 阅读 · 0 评论 -
AT2293-[AGC009D] Uninity【贪心,状压】
正题题目链接:https://www.luogu.com.cn/problem/AT2293题目大意给出一棵树,求它一棵点分树的最小深度。1≤n≤1051\leq n\leq 10^51≤n≤105解题思路点分树的做法是直接找重心,但是两个重心我们很难确定找哪个,所以这个方法行不通。但是这样我们大概能确定答案的上界是logn\log nlogn级别的。考虑我们记每个点的点分子树深度did_idi,那么did_idi肯定满足对于一对深度相同的(x,y)(x,y)(x,y),它们的路径上原创 2022-05-04 16:37:09 · 241 阅读 · 0 评论 -
ARC132D-Between Two Binary Strings【贪心】
正题题目链接:https://atcoder.jp/contests/arc132/tasks/arc132_d题目大意给出两个恰好有nnn个111和mmm个000的字符串s,ts,ts,t,定义两个字符串距离为通过交换两个相邻的字符把一个变成另一个的最小步数。对于字符串kkk如果dis(s,k)+dis(k,t)=dis(s,t)dis(s,k)+dis(k,t)=dis(s,t)dis(s,k)+dis(k,t)=dis(s,t)那么kkk在s,ts,ts,t之间。定义一个字符串的权值为相邻原创 2021-12-27 10:49:12 · 725 阅读 · 0 评论 -
P7990-[USACO21DEC]Closest Cow Wins S【堆,贪心】
正题题目链接:https://www.luogu.com.cn/problem/P7990题目大意数轴上有kkk个点是草地,每个草地有不同收益,mmm个点是地方的点,现在你要放置nnn个我方的点,不能和敌方的点重合。如果一个草地离最近的我方的点距离严格小于最近的敌方点距离,那么这个草地被占领。给出敌方点和草地坐标(保证两两不同),求占领草地的最大收益和 。1≤n,m,k≤2×105,1≤x≤1091\leq n,m,k\leq 2\times10^5,1\leq x\leq 10^91≤n,原创 2021-12-24 19:53:53 · 791 阅读 · 0 评论 -
AT5160-[AGC037C]Numbers on a Circle【贪心,堆】
正题题目链接:https://www.luogu.com.cn/problem/AT5160题目大意给出两个长度为nnn的环序列aaa和bbb,每次你可以让aaa中的一个数变为它和相邻两个的和。求最少的步数将aaa变为bbb。1≤n≤105,1≤ai,bi≤1091\leq n\leq 10^5,1\leq a_i,b_i\leq 10^91≤n≤105,1≤ai,bi≤109解题思路被蓝题D烂了。考虑反过来做,每次操作为Bi=Bi−Bi−1−Bi+1B_i=B_i-B_{i-1}-原创 2021-10-27 17:18:06 · 172 阅读 · 0 评论 -
P6805-[CEOI2020]春季大扫除【贪心,树链剖分,线段树】
正题题目链接:https://www.luogu.com.cn/problem/P6805题目大意给出nnn个点的一棵树,qqq次独立的询问。每次询问会在一些节点上新增一些子节点,然后你每次可以选择两个为选择过的叶子节点然后覆盖它们的路径,要求在覆盖所有边的情况下使得每次的路径长度和最小。1≤n,q,∑di≤1051\leq n,q,\sum d_i\leq 10^51≤n,q,∑di≤105解题思路先考虑暴力怎么做,我们可以把所有叶子去掉然后每个点的权值就是它原来子节点中的叶子数。然后原创 2021-10-21 13:45:58 · 226 阅读 · 0 评论 -
P7078-[CSP-S2020]贪吃蛇【贪心,队列】
正题题目链接:https://www.luogu.com.cn/problem/P7078题目大意有nnn条贪吃蛇,第iii条长度为aia_iai,每次最长的那条蛇可以选择吃掉最短的那条蛇,然后自己的长度减去其长度,也可以不吃然后结束游戏。现在询问在所有蛇都希望吃的蛇最多且自己不会被吃的情况下最后会留下多少条蛇。TTT次每次修改kkk个值,保证修改前后aaa单调不降。3≤n≤106,1≤T≤10,0≤k≤1053\leq n\leq 10^6,1\leq T\leq 10,0\leq k\l原创 2021-10-12 20:44:39 · 283 阅读 · 0 评论 -
P5659-[CSP-S2019]树上的数【贪心】
正题题目链接:https://www.luogu.com.cn/problem/P5659题目大意给出nnn个点的一棵树,每个节点上有一个数字,你每次可以选择一条边删除然后交换连接的两个点的数字,在删完所有数字后设pip_ipi表示数字iii所在节点编号,要求使得排列ppp的字典序。1≤n≤2000,1≤T≤101\leq n\leq 2000,1\leq T\leq 101≤n≤2000,1≤T≤10解题思路好阴间的题目考虑对与一个点xxx的转移肯定是如下图类似的情况并且每个点连接的边原创 2021-10-12 18:53:36 · 271 阅读 · 0 评论 -
CF505E-Mr. Kitayuta vs. Bamboos【贪心,二分】
正题题目链接:https://www.luogu.com.cn/problem/CF505E题目大意开始一个长度为nnn的序列hhh,mmm天每天你可以kkk次选择一个hih_ihi让它等于hi=max{hi−p,0}h_i=max\{h_i-p,0\}hi=max{hi−p,0},然后结束时让每个hi=hi+aih_i=h_i+a_ihi=hi+ai,要求使得最后最大的hhh值最小。1≤n≤105,1≤m≤5×103,1≤k≤101\leq n\leq 10^5,1\leq m\le原创 2021-09-29 16:28:37 · 239 阅读 · 0 评论 -
CF1039D-You Are Given a Tree【根号分治,贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF1039D题目大意给出nnn个点的一棵树,然后对于k∈[1,n]k\in[1,n]k∈[1,n]求每次使用一条长度为kkk的链覆盖树并且不能重复覆盖点时最大覆盖条数。1≤n≤1051\leq n\leq 10^51≤n≤105解题思路先考虑暴力怎么做,因为每条链的价值都是一,显然的一种贪心思想是能合并的就合并(没有让出一条链给另一条链腾空间的必要)。这样的复杂度是O(n)O(n)O(n)的,但是对于每个都要原创 2021-09-27 16:52:57 · 217 阅读 · 0 评论 -
NWERC2020J-Joint Excavation【构造,贪心】
正题题目链接:https://codeforces.com/gym/103049/problem/J题目大意nnn个点mmm条边的一张无向图,选出一条路径后去掉路径上的点,然后将剩下的点分成点数相等的两份使得两份之间没有边连接。1≤n,m≤2×1051\leq n,m\leq 2\times 10^51≤n,m≤2×105解题思路先跑出dfsdfsdfs树,这样就保证了所有的非树边都是返祖边。发现如果我们选出树上一条根节点出发的路径那么其他子树之间一定是不连通的(因为要么子树之间有环,要么原创 2021-08-24 16:51:30 · 412 阅读 · 0 评论 -
CF183D-T-shirtx【dp,贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF183D题目大意nnn个人,mmm种衣服,给出每个人喜欢某件衣服的概率,你可以选择nnn件衣服带过去(可以重复款式)。求最大化能拿到喜欢衣服人的期望数量。1≤n≤3000,1≤m≤3001\leq n\leq 3000,1\leq m\leq 3001≤n≤3000,1≤m≤300解题思路考虑暴力的dpdpdp,设fi,j,kf_{i,j,k}fi,j,k表示对于前kkk个人种类为jjj的衣服选择了iii件原创 2021-08-20 16:31:54 · 135 阅读 · 0 评论 -
51nod1821-最优集合【贪心】
正题题目链接:http://www.51nod.com/Challenge/Problem.html#problemId=1821题目大意nnn个可重集合,TTT次询问,询问将集合SxS_xSx和一个选出大小为kkk的SyS_ySy的子集合并成的独立集S′S'S′满足能够找到一个最大的zzz使得对于任意的正整数i∈[1,z]i\in [1,z]i∈[1,z]都存在一个S′S'S′的子集和为iii。1≤n,mi≤1000,1≤T≤100001\leq n,m_i\leq 1000,1\leq T原创 2021-08-01 22:28:34 · 176 阅读 · 0 评论 -
P5470-[NOI2019]序列【模拟费用流】
正题题目链接:https://www.luogu.com.cn/problem/P5470题目大意两个长度为nnn的序列a,ba,ba,b,求出它们两个长度为KKK的子序列,且这两个子序列至少有LLL个位置下标相等。求最大化两个子序列的和。T≤10,1≤n≤2×105,∑n≤106T\leq 10,1\leq n\leq 2\times 10^5, \sum n\leq 10^6T≤10,1≤n≤2×105,∑n≤106解题思路先考虑一个简单的费用流做法,我们对于aia_iai建在左边,原创 2021-07-20 09:08:40 · 187 阅读 · 1 评论 -
P7408-[JOI 2021 Final]ダンジョン 3【贪心,树状数组】
正题题目链接:https://www.luogu.com.cn/problem/P7408题目大意一个有n+1n+1n+1层的地牢,从iii到i+1i+1i+1层要AiA_iAi点能量,第iii层可以花费BiB_iBi获得111点能量。mmm次询问从SiS_iSi层出发到第TiT_iTi层在能量上限为UiU_iUi的情况下至少需要花费多少。1≤n,m≤2×1051\leq n,m\leq 2\times 10^51≤n,m≤2×105解题思路模型可以转换成坐标轴上有nnn个点,第原创 2021-07-16 18:57:57 · 292 阅读 · 0 评论 -
P6775-[NOI2020]制作菜品【贪心,dp】
正题题目链接:https://www.luogu.com.cn/problem/P6775题目大意nnn种原材料,第iii个有did_idi个,mmm道菜品都需要kkk个原料而且每道菜最多只能用两种材料。要求构造方案使得满足条件。1≤n≤500,n−2≤m≤5000,1≤k≤5000,(∑i=1ndi)=m×k1\leq n\leq 500,n-2\leq m\leq 5000,1\leq k\leq 5000,(\sum_{i=1}^nd_i)=m\times k1≤n≤500,n−2≤m≤原创 2021-07-01 07:13:16 · 198 阅读 · 0 评论 -
P7514-[省选联考2021A/B卷]卡牌游戏【贪心】
正题题目链接:https://www.luogu.com.cn/problem/P7514题目大意给出nnn个卡牌有ai/bia_i/b_iai/bi,开始都是aia_iai朝上,将不超过mmm张卡牌变为bib_ibi面朝上,使得朝上的数字中最大值减去最小值最小。3≤n≤106,1≤m<n,1≤ai,bi≤1093\leq n\leq 10^6,1\leq m<n,1\leq a_i,b_i\leq 10^93≤n≤106,1≤m<n,1≤ai,bi≤109解题思原创 2021-04-16 10:46:47 · 497 阅读 · 0 评论 -
P3971-[TJOI2014]Alice and Bob【贪心】
正题题目链接:https://www.luogu.com.cn/problem/P3971题目大意一个1∼n1\sim n1∼n的一个排列,设aia_iai表示以iii结尾的最长上升子序列长度,bib_ibi表示以iii开头的最长下降子序列长度。给出序列aaa求序列bbb的最大和。1≤n≤1051\leq n\leq 10^51≤n≤105解题思路考虑数组aaa带来的限制对于一个ai=aj=w(i<j)a_i=a_j=w(i<j)ai=aj=w(i<j)那么有原创 2021-04-06 16:35:24 · 160 阅读 · 0 评论 -
P4480-[BJWC2018]餐巾计划问题【三分,贪心】
正题题目链接:https://www.luogu.com.cn/problem/P4480题目大意nnn天,第iii天需要aia_iai个餐巾。每个餐巾价格为ppp,使用完后有两种清洗方法清洗m1m_1m1天,费用为c1c_1c1清洗m2m_2m2天,费用为c2c_2c2求满足所有需求的最小花费1≤n≤2×105,1≤m1,m2≤n,1≤c1,c2,ai≤1001\leq n\leq 2\times 10^5,1\leq m_1,m_2\leq n,1\leq c_1,c_2原创 2021-03-14 02:14:31 · 2403 阅读 · 0 评论 -
AT4120-[ARC096D]Sweet Alchemy【贪心,背包】
正题题目链接:https://www.luogu.com.cn/problem/AT4120题目大意给出nnn个物品和一个容量mmm,第iii个物品体积为cic_ici。除了第一个物品每个物品还有一个pi(pi<i)p_i(p_i<i)pi(pi<i)表示如果pip_ipi个物品选择了xxx个,第iii个物品选择了yyy个要求满足x≤y≤x+dx\leq y\leq x+dx≤y≤x+d。1≤n≤50,1≤m,ci≤109,0≤d≤109,1≤p<i1\leq n\原创 2021-03-02 17:44:18 · 234 阅读 · 0 评论 -
P6793-[SNOI2020]字符串【广义SAM,贪心】
正题题目链接:https://www.luogu.com.cn/problem/P6793题目大意给出两个长度为nnn的字符串,取出他们所有长度为kkk的连续子串分别构成两个可重集合A,BA,BA,B。你每次可以花费xxx点代价修改AAA中一个字符串长度为xxx的后缀,求至少花费多少代价能够使得两个集合完全相同。1≤k≤n≤1.5×1051\leq k\leq n\leq 1.5\times 10^51≤k≤n≤1.5×105解题思路两个串S,TS,TS,T的匹配代价是max{k−LCP(原创 2021-02-15 19:33:30 · 202 阅读 · 0 评论 -
AT3957-[AGC023F]01 on Tree【贪心,堆】
正题题目链接:https://www.luogu.com.cn/problem/AT3957题目大意nnn个节点的一棵树,每个节点有0/10/10/1。每次删除一个根节点,然后把该节点的值填入序列,求最终序列的最小逆序对数量。n≤2×105n\leq 2\times 10^5n≤2×105解题思路考虑一种贪心,开始每个节点作为一个单独的联通块,每次选择一个节点把它和它父节点的联通快合并并且它的联通快排在它父节点的后面。显然这样的选择可以构成所有可能的序列,现在需要考虑选择顺序。设cntx,原创 2021-02-14 16:55:17 · 191 阅读 · 0 评论 -
YbtOJ#643-机器决斗【贪心,李超树】
正题题目链接:https://www.ybtoj.com.cn/problem/643题目大意nnn个机器人,第iii个攻击力为AiA_iAi,防御为DiD_iDi。然后你每次可以对一个机器人造成AtkAtkAtk点伤害,之后所有机器人对你进行一次攻击。开局可以删除两个机器人,求最少受到多少伤害。n∈[3,3×105],Ai,Ti∈[1,104]n\in[3,3\times 10^5],A_i,T_i\in[1,10^4]n∈[3,3×105],Ai,Ti∈[1,104]解题思路原创 2021-02-14 15:22:35 · 177 阅读 · 0 评论 -
AT3949-[AGC022D]Shopping【贪心】
正题题目链接:https://www.luogu.com.cn/problem/AT3949题目大意长度为LLL的坐标轴上,给出nnn个点,每个点xix_ixi需要购物tit_iti的时间,一辆车在0∼L0\sim L0∼L折返跑,求从000出发购物完回到000的最短时间。n∈[1,3×105],L∈[1,109]n\in[1,3\times 10^5],L\in[1,10^9]n∈[1,3×105],L∈[1,109],输入的xix_ixi单调递增。解题思路挺奇妙的题目,WC2021原创 2021-02-10 20:33:35 · 211 阅读 · 0 评论 -
P7244-章节划分【RMQ,贪心,递归】
正题题目链接:https://www.luogu.com.cn/problem/P7244?contestId=38911题目大意nnn个数字,分成连续非空的kkk段要求每一段的最大值的gcdgcdgcd最大。解题思路首先答案一定是最大值的约数,这些数不多我们可以枚举这些数xxx。然后我们称xxx的倍数的位置为关键点。现在我们要求在选取的全都是关键点的情况下最多能够选取的关键点数量我们先找出最大的数(第一次肯定是最大的那个数)然后如果这个数是xxx的倍数就递归左右两边把数量加起来。如果不是原创 2021-01-03 08:12:31 · 177 阅读 · 0 评论 -
ATcoder-[AGC048B]Bracket Score【结论,贪心】
正题题目链接:https://atcoder.jp/contests/agc048/tasks/agc048_b题目大意长度为nnn的合法括号序列可以包含[...][...][...]和(...)(...)(...)。如果在第iii个位置是′ ( ′'\ (\ '′ ( ′ 或者 ′ ) ′'\ )\ '′ ) ′那么可以获得aia_iai的权值,否则获得bib_ibi的权值。求一个合法的括号序列使得权值最大。原创 2020-12-30 20:38:53 · 258 阅读 · 0 评论 -
CF1054D-Changing Array【贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF1054D题目大意一个长度为nnn的序列,每个数小于2k2^k2k,可以选择一些数xorxorxor上2k−12^k-12k−1。要求使得满足al xor al+1 xor...xor ar=0a_l\ xor\ a_{l+1}\ xor...xor\ a_r=0al xor al+1 xor...xor ar=0的区间个数最少。原创 2020-12-30 08:04:05 · 223 阅读 · 0 评论 -
CF878E-Numbers on the blackboard【并查集,贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF878E题目大意nnn个数字,每次可以把两个相邻的数字x,yx,yx,y变为x+2yx+2yx+2y。mmm次询问一个区间合成一个数字后最大是多少。解题思路答案可以把每个数字变成xicix_i^{c_i}xici,其中ci≤ci−1+1c_i\leq c_{i-1}+1ci≤ci−1+1。我们可以把数字变成一个个联通的块,对于同一个块中的,有ci=ci−1+1c_i=c_{i-1}+1ci=ci−原创 2020-12-21 19:33:11 · 230 阅读 · 0 评论 -
YbtOJ#20089-[NOIP2020模拟赛B组Day10]平衡的树【贪心】
正题题目链接:https://www.ybtoj.com.cn/contest/70/problem/3题目大意一棵树nnn个节点,每条边(x,y,a,b)(x,y,a,b)(x,y,a,b),可以花费111的代价让一条边的a,ba,ba,b都减去111,但是不能小于000,要求最少代价使得每条边满足yyy子树的边的aaa和不超过bbb。解题思路发现如果没有不能小于000的条件很好做,这样我们肯定优先减去最下面的aia_iai即可,然后减去上面时bib_ibi减少不会影响答案,因为都已经满原创 2020-11-30 14:58:16 · 220 阅读 · 0 评论 -
P3620-[APIO/CTSC2007]数据备份【贪心,堆,链表】
正题题目链接:https://www.luogu.com.cn/problem/P3620题目大意一条线上有nnn个位置,选出kkk对使得它们的距离差之和最小。解题思路因为一定是连接相邻的最优,那么可以在差分数组上做,相当于我们在一个差分数组上选择一些不相邻的数使得它们和最小。考虑贪心,我们对于一个最小的位置xxx选择了之后,更优的情况可能是选择xxx相邻的两个然后不选择xxx。那么就可以删除这三个数然后加入一个dx−1+dx+1−dxd_{x-1}+d_{x+1}-d_xdx−1+dx+原创 2020-11-21 10:09:14 · 243 阅读 · 0 评论 -
jzoj5698-[gdoi2018day1]密码锁【贪心,差分】
正题题目大意nnn个数字,每次可以让一个区间加或减111。然后数字是一个[0,m−1][0,m-1][0,m−1]的循环,求最少次数让所有数字变成000解题思路我们做一个%m\%m%m意义下的差分数组之后问题就变成了选择两个位置一增一减使得所有的变成000。那么我们可以将整个差分数列划分为两部分,一部分往mmm走一部分往000走,我们从小到大排序后枚举分割位置即可。时间复杂度O(nlogn)O(n\log n)O(nlogn)codecodecode#include<cstdi原创 2020-11-20 22:33:03 · 224 阅读 · 0 评论 -
AT2165-[AGC006D]MedianPyramidHard【二分,贪心】
正题题目链接:https://www.luogu.com.cn/problem/AT2165题目大意nnn行的一个金字塔,第iii层有2×i−12\times i-12×i−1个格子,每个格子是它左右下的中位数。给出最下面的2n−12n-12n−1个数,求第一行的数。解题思路我们先二分一个答案,然后变成010101,如果它的下方有两个或以上的就是这个格子的。找到一个离中间最近的相邻的相同颜色,这个颜色就是答案,因为这两个数顶上连续到中间的都是这个颜色,因为只有另一个连续相同的颜色才能隔开这些原创 2020-11-02 18:39:46 · 229 阅读 · 0 评论 -
CF442C-Artem and Array【贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF442C题目大意nnn个数,删除一个数可以获得左右两边最小值的价值,求删除所有数的最大价值。解题思路对于一个位置如果它左右两边都比它高那么这个位置一定删除,然后序列会呈一个单峰状,我们除了最大的和次大的都可以选到。时间复杂度O(nlogn)O(n\log n)O(nlogn)codecodecode#include<cstdio>#include<cstring>#inclu原创 2020-10-19 21:11:49 · 233 阅读 · 0 评论 -
CF525D-Arthur and Walls【贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF525D题目大意n∗mn*mn∗m的网格,有∗*∗和...,每次可以将∗*∗改成...。求最少操作使得每个...所在的联通块都是一个矩形。解题思路因为一个大矩形中每一个小块也是一个矩形,反之同理。那么我们只需要统计每个2∗22*22∗2的网格如果只有一个∗*∗那么这个∗*∗是需要去除的,然后用类似bfsbfsbfs的方法来扩展即可。时间复杂度O(nm)O(nm)O(nm)codecodecode#inc原创 2020-10-19 20:43:00 · 214 阅读 · 0 评论 -
CF496E-Distributing Parts【平衡树,贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF496E题目大意nnn个[li,ri][l_i,r_i][li,ri],mmm个[ai,bi,ki][a_i,b_i,k_i][ai,bi,ki]表示可以覆盖掉kik_iki个ai≤li≤ri≤bia_i\leq l_i\leq r_i\leq b_iai≤li≤ri≤bi的区间,求能否覆盖所有区间。解题思路右端点排序后,然后每个优先选取左端点最小的区间即可,用平衡树维护。时间复杂度O(n原创 2020-10-19 17:57:39 · 225 阅读 · 1 评论 -
P4570-[BJWC2011]元素【线性基,贪心】
正题题目链接:https://www.luogu.com.cn/problem/P4570题目大意给出nnn个物品有aia_iai和bib_ibi。要求选出一个bib_ibi和最大的子集满足其中的aia_iai不能由其中的其他aia_iai异或得到解题思路我们发现对于一个集合能否加入一个物品其实就是判断aia_iai是否能插入当前集合的线性基。每次插入一个物品必定会使得一个did_idi改变,也就是每次禁止掉一个did_idi就必定会使得一个物品无法选择。对于一个无法插入的物原创 2020-10-03 09:52:49 · 180 阅读 · 0 评论 -
nssl1511-我的世界【堆,贪心】
正题题目大意nnn个点的一棵树,给每一个点一个权值,每个点的依靠点是与它相连的权值最小的点,要求每个点最多只有一个依赖点。求字典序最小的方案解题思路首先最小的一定是叶子结点,然后他的父节点指向他,因为它是叶子,所以他也指向他的父节点。这样我们每次可以得到一个点对。对于每个点对,连左边的点都比右边的点大,连右边的点都比左边的点大,这样我们就可以得到一张大小关系的有向图。求字典序最小的拓扑序即可codecodecode#pragma GCC optimize(2)%:pragma GCC原创 2020-09-02 18:10:07 · 175 阅读 · 0 评论 -
CF1066F-Yet another 2D Walking【贪心】
正题题目链接:https://www.luogu.com.cn/problem/CF1066F题目大意平面上有nnn个点,每个点在max(x,y)max(x,y)max(x,y)层,走第kkk层的点之前一定要先走前面层的点,求走完所有点的最短路。解题思路对于每一层来说,我们可以将其看成一条直线,那么我们走某一层一定是先走到最边上的点再走到另一边最边上的点,因为如果这两个点也是必走的,如果没有走到这个点不行,如果走到了这个点,那么这边的所有点一定已经走到过。所以排序来做即可codecode原创 2020-08-21 09:03:41 · 266 阅读 · 0 评论