链接:https://codeforces.com/contest/437/problem/B 题意:给出n,sum,构造一个序列满足:整数,无重复,范围1-n,sigma(ai)=sum,输出长度和各个元素。n<1e5 题解:考虑1-n的每个整数对sum的贡献,在从大往下取(贪心)。 ...
分类:
其他好文 时间:
2019-10-31 01:10:04
阅读次数:
89
目录: 个人理解 反悔贪心的分类 反悔自动机 反悔堆 例题简析及代码 一、个人理解: 贪心本身是没有反悔操作的,贪心求的就是当前的最优解。但当前的最优解有可能是局部最优解,而不是全局最优解,这时候就要进行反悔操作。 反悔操作 指的是这一步的贪心不是全局最优解,我们就退回去一步(人工或自动判断),换一 ...
分类:
其他好文 时间:
2019-10-30 22:53:29
阅读次数:
137
给你数轴上的N条线段和K种颜色 K和N1e5 要你把这N条线段染色 使得有K种不同颜色的线段长度最长 首先很容易想到被至少K段线段覆盖的区间是一定有贡献的 接下来就是怎么染色的问题 我们把这N个区间的端点排序一下 把K个颜色放入一个队列 碰到端点是左端点 先检查颜色队列是否为空 为空的话 把这个左端 ...
分类:
其他好文 时间:
2019-10-30 22:52:43
阅读次数:
134
双栈排序 题目链接:https://www.luogu.org/problem/P1155 数据范围:略。 题解: 神仙题。 就第一步就够劝退了。 这个二分图非常不容易,首先只有两个栈,不是属于一个就是属于另一个,我们用二分图判断冲突。 然后不能模拟,我们就贪心的bfs就行了,这一步很鬼畜啊.... ...
分类:
编程语言 时间:
2019-10-30 00:10:11
阅读次数:
103
首先我们要明确一点: 每一个小组中的奶牛不一定要行动一致!(即可以只上一部分) (我在这里卡了好久艹) 所以易得出一个贪心策略: 尽量将班车装满 .但好像有些问题. 举个栗子: $3\ 10\ 5\\1\ 10\ 5\\1\ 5\ 5\\6\ 10\ 5$ 如果我们按照上面的策略,答案就将是$5$, ...
分类:
其他好文 时间:
2019-10-29 23:34:02
阅读次数:
90
背包问题【DP】 有一个背包,背包容量是M=150kg。有7个物品,物品不可以分割成任意大小。要求尽可能让装入背包中的物品总价值最大,但不能超过总容量。 01背包 f[j]=max(f[j],f[j-w[i]]+c[i]); 搬书【DP】 陈老师桌上的书有三堆,每一堆都有厚厚的一叠,你想逗一下陈老师 ...
分类:
其他好文 时间:
2019-10-29 23:20:38
阅读次数:
164
题目链接: http://codeforces.com/contest/1251/problem/E2 题意: 主角需要获得n个人的投票 有两种方式让某个人投票 1,已经投票的人数大于m 2,花p枚硬币收买 数据范围: $1\leq n \leq 200 000$ 分析: 对$m$进行排序 保留前缀 ...
分类:
其他好文 时间:
2019-10-29 21:41:43
阅读次数:
113
这个真的好巧妙啊~ 如果只考虑点权的话显然直接按照权值大小排序即可. 但是加入了边权,就有了一个决策的问题. 于是,我们将边权分一半,分给两个端点. 如果一个人拿了两个端点,则边权都会加上. 否则,边权会抵消. 直接按照点权+一半边权排序即可. code: ...
分类:
其他好文 时间:
2019-10-29 19:34:46
阅读次数:
103
第一个问题可以用贪心+二分解决第二个问题用f[i][j]表示i次分割后分割到j且满足条件的方案数,$f[i][j]=\sum_{k<j且sum[j]-sum[k]<=ans}f[i-1][k]$优化时间:前缀和优化,二分要先预处理出来(也可以用优先队列)优化空间:发现f并没有什么用处,只需要记录前缀 ...
分类:
其他好文 时间:
2019-10-29 10:05:51
阅读次数:
79
传送门 贪心 对于第一个不合法的位置,我们显然要通过删除几个覆盖了它的区间来使这个位置合法 显然删右端点更靠右的区间是更优的,所以就考虑优先删右端点靠右的,然后再考虑下一个不合法位置 用一个 $set$ 维护一下右端点和区间编号即可 ...
分类:
其他好文 时间:
2019-10-29 10:03:31
阅读次数:
103