==贪心&分治&二分
DenyTian
做最好的自己
展开
-
arc100C 【三分】【贪心】
题目链接:https://arc100.contest.atcoder.jp/tasks/arc100_a题意:求对于所有的b,的最小值题解:贪心:显然问题可以转化成p[i]=a[i]-i, 求abs(p[i]-b)之和枚举b在第k个位置大于p,则答案即为p[k+1..n]−p[1..k]+(2∗k−n)∗a[k/k+1]p[k+1..n]-p[1..k]+(2*k-n)*a[k ...原创 2019-10-17 21:06:13 · 265 阅读 · 0 评论 -
Codeforces 364E Empty Rectangles 【分治】
题目链接:https://codeforces.com/contest/364/problem/E题意:给一个n*m的01矩阵,问有多少个子矩阵满足其和为K题解:考虑solve(x1,y1,x2,y2)solve(x1,y1,x2,y2)solve(x1,y1,x2,y2)表示[x1,y1]到[x2,y2]的答案,显然最后的答案就是solve(1,1,n,m)solve(1,1,n,m)so...原创 2019-09-30 20:38:35 · 404 阅读 · 0 评论 -
Codeforces 760B Frodo and pillows 【二分】
题目链接:http://codeforces.com/contest/760/problem/B 题目大意:有 n 个床 m 个枕头,每个床上有个人,主人在 第 k 个床上。现在要求让每个人都有一个枕头,且相邻两个人之间的枕头数之差不应超过1。问主人最多能得到多少个枕头。题解:二分能得到的枕头数。 代码:#include <cstdio>#inclu...原创 2017-01-23 12:46:32 · 1070 阅读 · 0 评论 -
BZOJ 1029 建筑抢修 【贪心】【堆】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1029题解: 显然的贪心题。 我们可以先按结束的时间从小到大进行排序,然后每次贪心的去取。 设当前可以得到的最短时间为 nowtime 。 如果当前一栋建筑的nowtime+抢修时间比报废时间早(&lt;=),那么答案+1。 否则看当前时间是否最原创 2017-02-10 20:44:52 · 274 阅读 · 0 评论 -
Codeforces 659C Tanya and Toys 【贪心】
题目链接:http://codeforces.com/contest/659/problem/C 题意:一个人有n个玩具m块钱,第i个玩具i元钱,现在已经有a1-an个玩具了,问m块钱最多能买多少个玩具,不能买已经有的玩具。 题解:将已经有的玩具标记访问,从1开始往后循环,如果发现没有标记的就压入vector,如果总钱数超过了 m 就break。最后注意访问标记需要用m...原创 2017-02-04 16:37:43 · 307 阅读 · 0 评论 -
Codeforces 371C Hamburgers 【二分】
题目链接;http://blog.csdn.net/csdn364988181/article/details/48253267 题意:有一个字符串表示制作1个汉堡的菜单。第二行给出拥有的每种材料的个数。第三行给出每种材料的加钱。第四行给出有的钱。问至多能弄到多少个汉堡。 题解:二分。注意要开longlong,上界也要开的足够大。 代码: #include...原创 2017-02-05 16:22:12 · 390 阅读 · 0 评论 -
Tyvj 1094 矩形分割【贪心】
题目链接:http://www.tyvj.cn/p/1094题解: 模拟切割的过程,注意到切割的次序越往后,值越大,所以每次选取当前数组中最大的,再弹出。结果比较好求,想想就切了,有意思的一道小题。代码:#include <cstdio>#include <algorithm>using namespace std;const int size = 10005;struct _mat{原创 2017-02-10 18:01:22 · 441 阅读 · 0 评论 -
BZOJ 1150 数据备份Backup 【贪心】【堆】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1150题意: 就是问你求完差分后选出 k 个数,使得他们的和最小。 题解: TMD这道题搞得我快要神志不清了。。WA了12次才搞出来。。 这道题基本就是SB贪心,用一个堆维护就可以了。 但是一定要注意细节。。我快要被坑惨了。。代码:#include <原创 2017-02-18 12:42:56 · 692 阅读 · 0 评论 -
Codeforces 768B Code for 1 【分治】
题目链接:http://codeforces.com/contest/768/problem/B题意: 有一个序列,刚开始,只有1个数n,接着按照以下顺序变化: 1:找到序列中任意一个>1的数p,将他变为 p/2, p%2, p/2 直到所有点数都不大于1为止。 问最后的序列 l-r 中有多少个1 题解: md这道题直接用分治搞就可以了。。我写一个原创 2017-02-22 20:44:55 · 1450 阅读 · 0 评论 -
Codeforces 779D String Game 【二分】
题目链接:http://codeforces.com/contest/779/problem/D题意:给你两个字符串p和t,又给你一个排列 a,现在第 i 次你需要删除p字符串中的第a[i] 个字符,问最晚出现p是t的子串是在什么时候。。这道题让我挺伤心的。。明明比赛的时候已经写出代码了。。还是晚了一步。。hhh。。题解: 直接二分。。挺有趣的一道题,刚开始还束手无策。。TAT代码:#in原创 2017-03-01 20:03:59 · 389 阅读 · 0 评论 -
BZOJ 3709 Bohater 【贪心】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3709题解: 对于杀完能加血的怪物,直接按照消耗从小到大排序,否则将血量从大到小排,z 需要用 long long !100000^2 会爆int!代码:这里写代码片原创 2017-09-25 22:12:11 · 257 阅读 · 0 评论 -
BZOJ4753 [Jsoi2016]最佳团体 【树形背包】【二分】
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=4753题解: 对于最终答案进行浮点二分,对于每次的 midmidmid,进行dpdpdp。 令dp[i][j]dp[i][j]dp[i][j] 表示考虑到 dfs序dfs序dfs序 第 iii 个结点及所在子树,已经选了 jjj 个结点的最大权值(Σni=1(p[i]−cur∗s[...原创 2018-08-19 19:09:40 · 292 阅读 · 2 评论