![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
贪心
文章平均质量分 66
贪心
Fiveneves
这个作者很懒,什么都没留下…
展开
-
Educational Codeforces Round 97 (Rated for Div. 2) D. Minimal Height Tree
D. Minimal Height Tree题目链接-D. Minimal Height Tree题目大意有一棵树,其子节点都是按照升序摆列,现在给出广度优先搜索的访问次序,请你求出该树的最小深度解题思路bfs思想+贪心bfs思想+贪心bfs思想+贪心刚开始开始我们易得mp[0]=1,每次用mp[ans]++记录每一深度的可用的节点数目,对于一段严格单增的区间,必然是放在同一个父节点下面最好从第二个节点开始遍历,当a[i]<a[i-1]时,说明a[i]和a[i-1]不能连在同一原创 2020-10-29 01:03:40 · 240 阅读 · 0 评论 -
AcWing 145. 超市
145. 超市题目链接-145. 超市解题思路优先队列+贪心优先队列+贪心优先队列+贪心我们可以根据商品的过期时间对商品进行排序,然后创建一个优先队列,然后遍历排序后的商品对于每一个商品,我们把它的利润放入优先队列,如果此时该队列里的商品的数目大于该商品的过期时间,我们就可以把队首的商品弹出(因为队顶的元素利润是最小的),此时队列中所有元素都满足条件且是该时刻利润最大的选择,重复该操作直至扫完所有商品为止最后我们统计一下队列中商品利润之和,即为最后要输出的答案具体操作见代码附上代码#原创 2020-10-23 00:34:52 · 141 阅读 · 0 评论 -
2020牛客暑期多校训练营(第六场)C.Combination of Physics and Maths
C.Combination of Physics and Maths题目链接-C.Combination of Physics and Maths题目大意一个矩阵的底面积SSS 定义为最后一行的数的和,重量FFF定义为所有数的和。现给你一个正整数矩阵,找一个p=FSp=\frac{F}{S}p=SF最大的可非连续子矩阵,输出ppp的最大值解题思路贪心贪心贪心假设ab>cd\frac{a}{b}>\frac{c}{d}ba>dc,那么ab−cd>0⇨ad−bcb原创 2020-07-29 18:53:15 · 150 阅读 · 0 评论 -
2020 Multi-University Training Contest 2-1001.Total Eclipse
1001.Total Eclipse题目链接-1001.Total Eclipse题目大意nnn个点mmm条边的无向图,每个点有一个正点权,每次选择一个连通子图,将里面的权值都减111,求所有点权为000的最小操作次数解题思路贪心+并查集贪心+并查集贪心+并查集常规思路就是每次选择一个最大的连通块,将里面的数同时减小,知道最小值变为000,然后将变成零的点删除,再分裂多个联通块继续执行上述操作但是这样操作明显会超时,那么我们就可以把操作顺序倒过来,用并查集反向处理连通块,先把大的点权值减原创 2020-07-28 01:34:59 · 240 阅读 · 0 评论 -
2020牛客暑期多校训练营(第三场)A.Clam and Fish
A.Clam and Fish题目链接-A.Clam and Fish题目大意一个游戏包含nnn个阶段,每个阶段有四种类型:类型000:没有鱼也没有蛤。类型111:只有一只蛤。类型222:只有一条鱼。类型333:有一条鱼和一只蛤在每个阶段都可以执行四种操作之一:用一只蛤换一包鱼饵。如果有一条鱼,可以无需鱼饵抓到这条鱼。无论在此阶段有没有鱼,都可以使用一包鱼饵捕获一条鱼。跳过该阶段请你求出每局游戏中能抓到鱼的最大条数解题思路贪心贪心贪心用ans记录抓到鱼的个数,cn原创 2020-07-24 03:02:30 · 287 阅读 · 0 评论 -
Codeforces Round #652 (Div. 2) C. RationalLee
C. RationalLee题目链接-C. RationalLee题目大意给你nnn个数,有kkk个朋友,每个朋友要拿其中wiw_iwi个数,每个人获得的贡献是他拿的数的最大值+最小值,请求出所有人能获得的最大贡献解题思路双指针+贪心双指针+贪心双指针+贪心我们先对数组a[],b[]a[],b[]a[],b[]排序,当wi=1w_i=1wi=1时,最大值等于最小值,所以我们要保证wi=1w_i=1wi=1时,拿剩下数中最大的因为每个人获得的贡献是他拿的数的最大值+最小值,所以最大值原创 2020-07-12 02:13:20 · 212 阅读 · 0 评论 -
Codeforces Round #655 (Div. 2) A. Omkar and Completion
A. Omkar and Completion题目链接-A. Omkar and Completion题目大意所有元素都是正的并且不超过1000,并且对于所有索引x,y,z(1≤x,y,z≤n),ax+ay≠azx,y,z(1≤x,y,z≤n),ax+ay≠azx,y,z(1≤x,y,z≤n),ax+ay=az(不一定是不同的),则长度为n的数组a称为完全数组,请你构造一个长度为nnn的完全数组解题思路首先如果数组中的元素全是奇数,奇数+奇数=偶数,那么必定满足ax+ay≠azax+ay原创 2020-07-12 01:00:33 · 1518 阅读 · 0 评论 -
洛谷P1439 【模板】最长公共子序列
题目链接-P1439 【模板】最长公共子序列#pragma GCC optimize("-Ofast","-funroll-all-loops")#include<bits/stdc++.h>#define int long long#define lowbit(x) (x &(-x))#define endl '\n'using namespace std;const int INF=0x3f3f3f3f;const int dir[4][2]={-1,0,1,0,0,原创 2020-07-11 01:34:23 · 263 阅读 · 0 评论 -
Codeforces Round #643 (Div. 2) D. Game With Array
D. Game With Array题目链接-D. Game With Array题目大意构造一个长度为nnn的序列,并且nnn个数的和为SSS,问能不能找到一个数k∈[1,S]k∈[1,S]k∈[1,S],使得数组里找不出一个子序列的和为kkk或者n−kn-kn−k解题思路贪心贪心贪心取k=1k=1k=1,数组中的前n−1n-1n−1个元素都设为222,第nnn个元素为S−(n−1)×2S-(n-1)×2S−(n−1)×2 ,只要第nnn个元素不等于111 即可,前提是否则就输出-1具原创 2020-05-23 02:50:08 · 160 阅读 · 0 评论 -
Codeforces Round #643 (Div. 2) B. Young Explorers
B. Young Explorers题目链接-B. Young Explorers题目大意每人都有一个组队人数,值为aia_iai的人只能加入人数大于等于aia_iai个人的团,求最多能组成多少个团.解题思路贪心贪心贪心先将数列从小到大排序,然后for循环遍历用cnt计数,所此时cnt==a[i]说明能凑成一队了,直接ans++,并将cnt清零一边重新计数具体操作见代码附上代码#pragma GCC optimize("-Ofast","-funroll-all-loops"原创 2020-05-23 01:20:10 · 211 阅读 · 0 评论 -
Codeforces Round #640 (Div. 4) B. Same Parity Summands
B. Same Parity Summands题目链接-B. Same Parity Summands题目大意给你一个数nnn,构造一个长度为kkk且元素奇偶性都相同的序列,该序列中每个元素都大于000解题思路贪心贪心贪心如果kkk个数全部是奇数,可以让前k−1k−1k−1个数都为111,最后一个数为n−(k−1)n−(k−1)n−(k−1),但是需要判断n−(k−1)n−(k−1)n−(k−1)是否大于零且是奇数如果kkk个数全部是偶数,可以让前k−1k−1k−1个数都为222,最后一原创 2020-05-11 12:32:09 · 201 阅读 · 0 评论 -
2019 JUST Programming Contest I. Array Negations
I. Array Negations题目链接-I. Array Negations题目大意解题思路附上代码#pragma GCC optimize("-Ofast","-funroll-all-loops")#include<bits/stdc++.h>#define int long long#define lowbit(x) (x &(-x))#def...原创 2020-05-09 02:49:37 · 169 阅读 · 0 评论 -
2019 JUST Programming Contest J. Grid Beauty
J. Grid Beauty题目链接-J. Grid Beauty题目大意解题思路附上代码#pragma GCC optimize("-Ofast","-funroll-all-loops")#include<bits/stdc++.h>#define int long long#define lowbit(x) (x &(-x))#define endl...原创 2020-05-08 17:09:40 · 128 阅读 · 0 评论 -
Codeforces Round #636 (Div. 3) C. Alternating Subsequence
C. Alternating Subsequence题目链接-C. Alternating Subsequence题目大意从给出的序列中构造一个子序列,该子序列需满足序列中所有元素都是正负交替排列,请你求出满足条件的最长子序列的所有元素和的最大值解题思路贪心贪心贪心将数组中元素按照正负分块,然后求出每个子块中的最大值即可我们可以遍历一遍数组,如果符号相同就更新最大值,如果符号不...原创 2020-05-07 17:02:02 · 122 阅读 · 0 评论 -
“科大讯飞杯”第18届上海大学程序设计联赛春季赛暨高校网络友谊赛 C.最长非公共子序列
C.最长非公共子序列题目链接-C.最长非公共子序列解题思路贪心贪心贪心因为要求最长非公共子序列,所以若两个字符串一样输出-1,否则就输出两个串中长度最长的长度即可附上代码//#pragma GCC optimize("-Ofast","-funroll-all-loops")#include<bits/stdc++.h>#define int long long...原创 2020-04-19 18:46:40 · 339 阅读 · 0 评论 -
Codeforces Round #481 (Div. 3) G. Petya's Exams
G. Petya’s Exams题目链接-G. Petya’s Exams题目大意输入n,m,n天,m门课,下面有m行,每行有三个数字,第一个数这门课的起始时间,第二个数是这门课的考试时间,第三个数表示这个门课的备考天数,看看能不能把所有的课程学完,如果能,请你输出一个合理的方案, 否则输出-1解题思路贪心贪心贪心用结构体储存每门课的起始时间,考试时间和备考天数,用ans[]数...原创 2020-04-14 01:17:05 · 134 阅读 · 0 评论 -
Codeforces Round #632 (Div. 2) F. Kate and imperfection
F. Kate and imperfection题目链接-F. Kate and imperfection题目大意一个由n个整数组成的集合S{1,…,n},子集M⊆SM⊆SM⊆S的缺陷值等于所有对(a,b)(a,b)(a,b)上gcd(a,b)gcd(a,b)gcd(a,b)的最大值(a,b∈Ma,b∈Ma,b∈M且a≠ba≠ba=b),请你分别在大小为k(k=2,…,n)k(k=2...原创 2020-04-09 19:43:15 · 153 阅读 · 0 评论 -
Codeforces Round #632 (Div. 2) A. Little Artem
A. Little Artem题目链接-A. Little Artem题目大意有一块n×mn×mn×m的木板,黑板上的每个单元格都应该涂上白色或黑色,设B是边上至少有一个白色方格相邻的黑色单元格的数量,W是边上至少有一个黑色方格相邻的白色单元格的数量,如果B=W+1B=W+1B=W+1,则称着色是好的,请你输出任意一个解决方案解题思路贪心贪心贪心只需左上角的格子为WWW,其他都...原创 2020-04-09 02:05:32 · 188 阅读 · 0 评论 -
Educational Codeforces Round 63 (Rated for Div. 2) A. Reverse a Substring
A. Reverse a Substring题目链接-A. Reverse a Substring题目大意就是给你一个字符串让你判断是否存在一个子串反转后字典序变小解题思路贪心贪心贪心只需找到一个字符比它前面的字符字典序小即可具体操作见代码附上代码#pragma GCC optimize("-Ofast","-funroll-all-loops")#pragma GCC...原创 2020-04-07 19:17:50 · 175 阅读 · 0 评论 -
Codeforces Round #539 (Div. 2) A. Sasha and His Trip
A. Sasha and His Trip题目链接-A. Sasha and His Trip题目大意Sasha要从1号城市花最少的钱到n号城市,任何两个相邻城市之间的距离等于1公里,因为这个国家的所有道路都是定向的,所以只有当x<yx<yx<y时,才有可能从xxx市到达yyy市, 汽车最大油箱油量是v, 第iii号城市单位油价是iii元一升,求Sasha的最小花费解...原创 2020-04-07 17:15:28 · 121 阅读 · 0 评论 -
NOIP2004 提高组 合并果子
NOIP2004 提高组 合并果子acwing题目链接-合并果子SWUST OJ题目链接-合并果子在一个果园里,达达已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。达达决定把所有的果子合成一堆。每一次合并,达达可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n−1n-1n−1次合并之后,就只剩下一堆了。达达在合并果子时总共消耗的体力等...原创 2020-04-07 16:39:02 · 228 阅读 · 0 评论 -
Codeforces Round #629 (Div. 3) C. Ternary XOR
C. Ternary XOR题目链接-C. Ternary XOR题目大意三进制的数ccc由三进制的数aaa和bbb通过操作ci=(ai+bi)%3ci=(ai+bi)\%3ci=(ai+bi)%3获得,给定ccc求出aaa和bbb并使得max(a,b)max(a,b)max(a,b)最小,且c的三进制数首位保证为2解题思路贪心至于222和111直接均分即可,如果是111,分给a,...原创 2020-03-27 22:29:35 · 143 阅读 · 0 评论 -
Educational Codeforces Round 84 (Rated for Div. 2) C. Game with Chips
C. Game with Chips题目链接-C. Game with Chips题目大意n×mn×mn×m 的网格图上有 k 个棋子,坐标为 (sxi,syisxi,syisxi,syi) ,每个棋子都有一个对应的必经点坐标 (fxi,fyifxi,fyifxi,fyi) 。现在你有最多2nm2nm2nm次移动机会,每次移动能够将棋子整体向上下左右四个方向中的一个移动一个单位(如果棋子...原创 2020-03-24 17:53:14 · 221 阅读 · 0 评论 -
Educational Codeforces Round 84 (Rated for Div. 2) B. Princesses and Princes
B. Princesses and Princes题目链接-B. Princesses and Princes题目大意国王有n个女儿,他想把他的女儿嫁给n个王国的王子。因此,他从1到n列举了他的女儿,从1到n列举了王国。他为每个女儿编制了一份她想嫁给的王国王子的名单。对于每一个女儿,她会嫁给她名单中数字最低的王国,如果名单中没有自由的王子,那么女儿就不嫁给任何人。在开始结婚之前,...原创 2020-03-24 17:17:49 · 146 阅读 · 0 评论 -
Codeforces Global Round 7 A. Bad Ugly Numbers
A. Bad Ugly Numbers题目链接-A. Bad Ugly Numbers题目大意输出一个位数为n的数s,且该数每一位数字都不能被s整除解题思路贪心如果n为1,那么无论s是哪个数字都必定能整除自身如果n不为n,那么577…77和233…33这两种类型的都满足题意附上代码#include<bits/stdc++.h>#define int long...原创 2020-03-20 17:51:15 · 335 阅读 · 0 评论 -
洛谷 P2660 zzc 种田
P2660 zzc 种田题目链接-P2660 zzc 种田解题思路数论+贪心假设一个正方形边长为n,我们可以视正方形周长为代价,面积则为收益因为总收益是一样的,所以我们找面积与周长比值最大的正方形即为最优解因为k=n2/4n=n/4且每次都只能种一个正方形,所以每次都种最大的正方形即为正解具体操作见代码附上代码#include<bits/stdc++.h>#d...原创 2020-03-18 02:19:43 · 528 阅读 · 0 评论 -
2020牛客寒假算法基础集训营6 A.配对
A.配对题目链接-A.配对解题思路附上代码#include<bits/stdc++.h>using namespace std;const int N=1e5+5;const int M=1e9+7;const int INF=0x3f3f3f3f;const double PI=acos(-1.0);typedef long long ll;typedef ...原创 2020-02-17 21:26:28 · 264 阅读 · 0 评论 -
Educational Codeforces Round 82 (Rated for Div. 2)B. National Project
B. National Project题目大意要修长度为n的路,每过g个好天气后就会迎来b个坏天气,好天气修的路质量高,坏天气修的路质量差,每天最多可以修长度为1的路,当然也可以不修,问你最少修多少天才能修完这段路且让整条路至少一半(n/2向上取整)的长度是质量高的解题思路附上代码#include<bits/stdc++.h>#define int long long...原创 2020-02-17 02:24:02 · 277 阅读 · 0 评论 -
2020牛客寒假算法基础集训营5 D.牛牛与牛妹的约会
D.牛牛与牛妹的约会题目链接-牛牛与牛妹的约会解题思路贪心,用牛牛现位置和牛妹的坐标计算距离,再用闪现后的坐标计算几个距离,所以直接判断闪现快还是走路快,如果如果前者减去后者大于1.0,说明闪现快,否则说明闪现慢了,小心闪现过头往回走的情况,模拟即可cbrt() 函数返回 x 的立方根值,这个函数不会失败,因为任何可表示的实数总有一个可表示的立方根函数原理:double cbrt(...原创 2020-02-14 17:52:44 · 254 阅读 · 0 评论 -
2020牛客寒假算法基础集训营2 F.拿物品
F.拿物品题目链接-拿物品解题思路贪心,最优的策略就是自己多拿且让对方少拿假设牛牛最后得分为N,牛可乐为M如果 牛牛的一个物品与 牛可乐的一个物品交换,则 m=N−a1+a2,m=M+b1−b2对于牛牛目标是最大化n-m,所以当n-m>N-M时会更优可列不等式N-a1+a2-(M+b1-b2)>N-M,解得a2+b2>b1+b2对于牛可乐也一样,所以...原创 2020-02-08 00:12:06 · 129 阅读 · 0 评论 -
2020牛客寒假算法基础集训营2 A.做游戏
做游戏题目链接-做游戏解题思路贪心,将牛牛出石头,剪刀,布的回合尽可能对应牛可乐出剪刀,布,石头的回合附上代码#include<bits/stdc++.h>using namespace std;#define ll long longconst int INF=0x3f3f3f;const int N=1e5+5;typedef pair<int,int...原创 2020-02-07 18:31:39 · 115 阅读 · 0 评论 -
2020牛客寒假算法基础集训营1 H.nozomi和字符串
**nozomi和字符串 **题目链接-nozomi和字符串解题思路显然操作要么全1变0,要么全0变1,分别处理两种操作即可,最后取最优的结果思路1:尺取法,用尺取法维护一个区间改变k个字符的区间用 l,r 记录左边界和右边界 ,具体思路见代码附上代码#include<bits/stdc++.h>using namespace std;#define ll...原创 2020-02-06 23:58:05 · 132 阅读 · 0 评论 -
Codeforces Round #617 (Div. 3)D. Fight with Monsters
D. Fight with Monsters题目链接-Fight with Monsters题目大意有n个怪兽,你和其他一名玩家轮流攻击guai’shou(自己先手),攻击力分别为a,b。你有k次机会使另外一名玩家跳过他的回合,问自己最多能杀多少只怪兽解题思路贪心设对每个怪兽要想得分可跳过的次数为x,则满足h%(a+b)≤(x+1)*a,即需跳过的最小次数xmin=(h%(a+b))...原创 2020-02-05 22:52:25 · 173 阅读 · 0 评论 -
Codeforces Round #617 (Div. 3)B. Food Buying
B. Food Buying题目链接-Food Buying题目大意给你 x 块钱,你花费多少会返给你x/10(向下取整)的钱,问你最多能花费多少钱解题思路模拟+贪心即可,只要手中未花费的钱大于十块,就不断的花费10的倍数即可,最后剩下的钱小于10就直接花出,没有返现;附上代码#include<bits/stdc++.h>using namespace std;#...原创 2020-02-05 15:32:43 · 235 阅读 · 1 评论 -
Codeforces Round #616 (Div. 2)A. Even But Not Even
A. Even But Not Even题目大意给你一个长整数,可以删减里面的任意数字(也可以不删减),要求本身不能除以2,但是该数的各位和能除以2,输出任意符合要求的数解题思路贪心,输出一个两位数,每位数字都是奇数即可,即在原来长整数找到两个奇数(ps:不能改变原来数字顺序),否则输出-1附上代码#include<bits/stdc++.h>using namespa...原创 2020-02-03 14:50:21 · 269 阅读 · 0 评论 -
洛谷P1031 均分纸牌
P1031 均分纸牌题目链接-均分纸牌解题思路贪心算法,最简单的模拟最坏的情况就是移动n-1次如果纸牌本来就满足条件就不需要再移动预处理就是求每堆纸牌与平均数的关系,多1记为1,少1记为-1从左至右依次扫描,a[i]>0的就把多的部分给右边那堆,a[i]<0的就从右边那堆拿过来补上附上代码#include<bits/stdc++.h>using na...原创 2020-02-01 22:38:51 · 317 阅读 · 0 评论 -
Educational Codeforces Round 81 (Rated for Div. 2)A. Display The Number
A. Display The Number题目链接-Display The Number题目大意电子显示屏上一个数字的每个位置由7个段组成,可以打开和关闭以组成不同的数字。不能同时打开超过n个段。现在您想知道通过启用不超过n个分段可以显示的最大整数是多少。解题思路贪心思想由题意易得输出的最大整数会爆long long数字0123456789段...原创 2020-01-30 14:02:36 · 1573 阅读 · 0 评论