贪心
Freopen
这个作者很懒,什么都没留下…
展开
-
「CSP2019-S2」Day1 T3 树上的数(贪心)
题目(T3题解)如何评价 CSP-J/S 2019 第二轮? - 知乎降智好题真的降智。首先贪心显然。那么每次只需要判断合法即可。对于每个数字到他的目的地是一条路径。我们需要让每一条路径都合法并且每一条边都被删过。合法的路径中边有三种:起始边需要满足在起点的所有邻接边中是第一个被删的。中途的边需要满足前后两条边a,ba,ba,b和之间夹着的点xxx满足在xxx的所有邻接边中是连...原创 2019-11-23 10:01:31 · 400 阅读 · 0 评论 -
【NOIP模拟赛】战斗
原题:COCI2016/2017 Round#1 Kralj矮人部落和侏儒军队准备战斗。为了减少流血牺牲,他们采用掰手腕来解决争端。矮人部落派出了N个最强壮的人,他们编号为1到N,并且排列为一个圈,首尾相连。侏儒军队也派出了N个最强壮的人去迎战,编号为1~N。有一个数组A,下标从1开始,其中A[i]在[1,N]之间。编号为i的侏儒去和编号为A[i]的矮人对战。但是,因为A数组的值不保证互不相同...原创 2019-11-12 15:52:58 · 237 阅读 · 0 评论 -
【NOIP模拟赛】七夕祭(环形均分纸牌)
七夕节因牛郎织女的传说而被扣上了「情人节」的帽子。于是TYVJ今年举办了一次线下七夕祭。Vani同学今年成功邀请到了cl同学陪他来共度七夕,于是他们决定去TYVJ七夕祭游玩。 TYVJ七夕祭和11区的夏祭的形式很像。矩形的祭典会场由N排M列共计N×M个摊点组成。虽然摊点种类繁多,不过cl只对其中的一部分摊点感兴趣,比如章鱼烧、苹果糖、棉花糖、射的屋……什么的。Vani预先联系了七夕祭的负责人...原创 2019-11-12 15:27:14 · 340 阅读 · 0 评论 -
Codeforces F - Serval and Bonus Problem
大佬链接Beta函数是个什么鬼。。这个式子居然有大佬能化出来真是跪了。。。。。。注意文中的f[i]=1if[i] = \frac {1} {i}f[i]=i1是错的。看代码就知道是f[i]=1i!f[i] = \frac {1} {i!}f[i]=i!1AC Code:#include<bits/stdc++.h>#define maxn 100005#define...原创 2019-04-27 22:33:34 · 246 阅读 · 0 评论 -
LOJ #2461. 「2018 集训队互测 Day 1」完美的队列(分块维护单调性)
题目详见 林旭恒《完美的队列》命题报告转化为求每次区间加入后所有被加入的点被彻底弹出的最早时间。然后发现区间相同插入时间不同时有单调性。分块,把每个区间分为n\sqrt nn个大块和n\sqrt nn个单点。(一个询问变成n\sqrt nn个询问)对于每个大块和每个单点都分别用two pointers处理出每个询问的答案。然后按颜色对时间区间取并,按输入时间插入可以省掉排序,...原创 2019-05-20 21:30:03 · 415 阅读 · 0 评论 -
哈夫曼树
给定nnn个权值作为nnn个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)\texttt{(Huffman Tree)}(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。每次拿权值最小的2个点,合并成一个新的点,权值为这两个点之和,新的点相当于这两个点的父亲。...原创 2019-06-01 16:08:40 · 468 阅读 · 0 评论 -
有先后限制的一类贪心问题
LOJ#2509. 「AHOI / HNOI2018」排列这个题实质上是一棵树上满足父亲比儿子先选,第i个选的点xxx的有i∗w[x]i*w[x]i∗w[x]的贡献,求最大贡献。可以发现w[x]w[x]w[x]最小的应该尽可能先的被选。于是我们考虑将最小的点xxx和faxfa_xfax缩为一个点。然后我们考虑到缩为一个点之后的新www是一个问题。考虑两个没有限制的树的先后选关系,缩为两...原创 2019-07-07 19:23:52 · 225 阅读 · 0 评论 -
0816模拟赛
序列给定 n 个正整数的序列 a1,a2,a3…ana_1,a_2,a_3…a_na1,a2,a3…an, 对该序列可执行下面的操作:选择一个大于 k 的正整数 ai, 将 ai 的值减去 1; 选择 ai-1 或 ai+1 中的一个值加上 1。共给出 m 个正整数 k, 对于每次给定的正整数 k, 经过以上操作一定次数后,求出最长的一个连续子序列, 使得这个子序列的每个数都不小...原创 2019-08-16 17:21:35 · 154 阅读 · 0 评论 -
BZOJ 2457 BeiJing2011 双端队列(思维)
题目题解:发现对于双端队列中的数,位置最靠前的那一个数的左边所有的数是递减的,并且左边所有的数的位置是递增的,对于右边:数递增而位置递增。又发现每个队列中的数字都是连续的一段。那么这一段中的每个数的位置大小一定是先递减后递增的。从小到大贪心加入,不能加入就换一个队列就行了。重复的一定可以放在同一个队列并且是答案不劣。AC Code:#include<bits/stdc++.h&...原创 2019-09-14 15:54:59 · 177 阅读 · 0 评论 -
LG P4331 [BOI2004]Sequence 数字序列(左偏树+贪心)
题目论文题。好难啊。我们先考虑b数组不下降。那么一定是一整条一整条的递增。。。。。。现在如果前半段和后半段的最优决策如此:那么整段的最优决策也就这样了。但是如果是这样的:那么不能直接合并。首先可以证明,整个的最优策略中,左边还是一条直线,右边也是。然后可以证明,这两条直线应该是一个高度(左边的想往上,右边的想往下,合在一起)。然后可以发现,这个高度就是中位数的高度。。。...原创 2019-03-23 12:08:49 · 185 阅读 · 0 评论 -
NOI.AC 运气大战
运气大战你的班上n个同学要去参加一项集体比赛。每个人有实力值和运气值。每个人的实力值是确定的,但是运气值是飘忽不定的。一个人的发挥是他的实力值wi和运气值的乘积,即wi⋅rci。班级的发挥是所有人发挥之和。每个人有一个初始运气值ri,但是每次比赛的时候,每个人的运气值是所有人运气值的一个排列,并且要满足,排列之后ii的运气值不是ri。即满足,ii的运气值是rci,{ci}是1−n1−n的排列,且...原创 2018-11-03 16:52:09 · 450 阅读 · 2 评论 -
O(nlogn)最长上升子序列
NOIP 1999 导弹拦截:#include<cstdio>#include<cstring>#include<cctype>#include<algorithm>#define maxn 5005using namespace std;int h[2][maxn],n=0,seq[maxn],len;int main()...原创 2018-03-10 14:38:24 · 196 阅读 · 0 评论 -
小C饮水记
题目描述小C虽然没有参加NOI2016, 但当他看到"国王饮水记"这题时还是迅速秒掉了.小C认为这题太水了,于是他决定对这题进行加强.现在小C桌上有n杯水排成一行,第i杯水中有wi 单位体积的水. 他会选择一个区间[l, r],并拿一个初始为空的杯子(杯子的容积无限大),他可以重复无限次以下操作:• 选定任意一杯水i,i ∈ [l, r].• 使i和它拿着的杯子里的水的体积变为它们的平均值.小C希...原创 2018-03-05 16:31:52 · 278 阅读 · 0 评论 -
倍增求解贪心问题
对于某些贪心算法问题,对于某一个决策A,之后实行B决策一定最优,那么我们就可以说A下一步是B。如果题目要求最长步数之类但是有一些特殊限制,可以枚举第一个决策然后倍增跳步,O(logn)算出最长步数。如环上问题...原创 2018-06-25 17:41:16 · 205 阅读 · 0 评论 -
雅礼集训Day3T2
题意:n个点的图,每个点有权值,有一定值m,两点a,b间有边当且仅当val[a]+val[b]>=m,将此图的点分为两部分,求两部分间的最大边数。根据连边条件,val>=m/2的所有点(记为A)构成了一个完全图,其他点(记为B)只与val>=m/2的点有连边。先不考虑B,A中的点可以贪心通过DP求最大边数(尽管可以O(1)求),F[i][j]表示某一个集合有j个点在最大的i个点中...原创 2018-07-04 15:44:59 · 269 阅读 · 0 评论 -
HDU 6299
#include<cstdio>#include<cstring>#include<cctype>#include<algorithm>#define maxn 5000006using namespace std;int l[maxn] , r[maxn] , c[maxn] , lensum;char s[maxn];inl...原创 2018-07-24 12:19:18 · 296 阅读 · 0 评论 -
多维曼哈顿最大距离
思路就是通过枚举每一个绝对值符号中相减的两个数,一负一正,哪个取负哪个取正,显然正确的选法值最大,值最大时一定有正确的选法。 绝对值去掉后,二进制枚举加贪心就行了。#include<bits/stdc++.h>#define maxn 100005#define inf 0x3f3f3f3fusing namespace std;int n,x[maxn][5],ans...原创 2018-08-23 20:36:37 · 745 阅读 · 0 评论 -
悬线法
利用极大化思想。 UVA 1330 AC Code:#include<bits/stdc++.h>#define maxn 1005using namespace std;int n,m,u[maxn][maxn],l[maxn][maxn],r[maxn][maxn];bool is[maxn][maxn];char s[3];int main(){ ...原创 2018-08-28 18:49:48 · 367 阅读 · 0 评论 -
[noip2016十连测第五场]travel (贪心)
题目描述给定一个长度为 n 的格子序列 x1,x2,…,xn。每一次 Lyra 可以选择向左跳到任意一个还没到过的位置,也可以向右跳到任意一个还没到过的位置。如果现在 Lyra 在格子 i,她下一步跳向格子 j,那么这次跳跃的花费为|xi-xj|。注意,跳意味着格子 i 和格子 j 中间其他的格子都不会被这次跳跃影响。并且,Lyra 不应该跳出边界。Lyra 的初始位置在格子 s。Ly...原创 2018-10-15 17:03:08 · 328 阅读 · 0 评论 -
归并法的另类活用
归并排序是OI中的一种常用方法,因为它借助了对于两个有序队列,合并成一个有序队列,只需要看队头,并以此达到O(n)的合并复杂度,至于分治只是活用它的一种方式罢了。但是看队头的思想并不只局限于队列。比如说丑数这个经典题:对于一给定的素数集合 S = {p1, p2, …, pK},考虑一个正整数集合,该集合中任一元素的质因数全部属于S。这个正整数集合包括,p1、p1p2、p1p1、p1p2p...原创 2018-10-30 12:27:12 · 244 阅读 · 0 评论 -
省选模拟赛Day4T2 攻略
Problem Problem Problem Problem Problem Problem Problem Problem 2 攻略 (game)(game)(game)(game)(game)(game)【题目描述】 【题目描述】一款游戏有 n个场景 (scene) (scene) ,某些场 景可以通过不同的选择支到达其他景。所有场和选择支构成树状结:开始游戏时在根节点 景。所有场和选择支构...原创 2018-03-07 17:06:25 · 341 阅读 · 0 评论