![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
贪心
Ostrichcrab
这个作者很懒,什么都没留下…
展开
-
L2-003 月饼
#include <iostream>#include<algorithm>#include<cstdio>using namespace std;struct mooncake{ float mount; float price; float unit;};int cmp(mooncake a,mooncake b){ ...转载 2018-03-24 12:00:06 · 125 阅读 · 1 评论 -
Codeforces Round #508 (Div. 2) C Gambling(贪心)
题目大意:两个人玩游戏,每个人两种操作,从自己那里拿一个数(是自己的得分),或者删除对手那里的一个数两个人都想最大化自己的得分,并最小化对方的得分,求A-B,得分的差值思路:博弈,如果对手的最大的数比自己最大的数还大,就删除对方的数,否则就拿自己那里的最大的数比赛的时候傻逼了,没开ll一直wa,误以为int的范围是ll的范围,ORZ,赛后改ll过了#include<st...原创 2018-09-09 19:11:17 · 223 阅读 · 0 评论 -
51nod1625 状态压缩+贪心
由于行的状态会改变列的状态,所以可以通过枚举所有行的状态(发与不发),计算当前状态列的状态,在满足题意的情况下贪心取大的(增量最大)#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;#define ll long longll a[15][205],...原创 2018-08-21 22:52:25 · 125 阅读 · 0 评论 -
51nod1621 花钱买车牌
被这道题难了一下午,记录一下1,枚举,枚举变成k个0,1,……9的代价,其中代价和最小的就是答案2,然后,再枚举,从代价小的开始枚举,例如,花费1的代价看能有几个 变成了,不够的话,就枚举花费2的代价,直到有k个,这样就满足了题意3,为了保证字典序最小,还要注意一点,同样花费2的代价,5变到3要比1变到2要好, 所以要优先减操作,减操作正序进行,加操作倒序进行(同样是...原创 2018-08-21 19:51:46 · 247 阅读 · 0 评论 -
2018百度之星初赛(B)1006
贪心。。 #include<cstdio>#include<algorithm>#include<iostream>#include<cmath>#define ll long longusing namespace std;int main(){ //freopen("in.txt", "r", stdin); ...原创 2018-08-12 23:05:09 · 227 阅读 · 0 评论 -
51nod1257 背包问题
其实还是01分数规划,因为要输出分数形式,所以要用结构体存数据,一起排序,每次记录分子分母,最后在输出就好啦#include<cstdio>#include<algorithm>#include<iostream>using namespace std;const int maxn = 1e5+5;int k,n;const double ep...原创 2018-08-07 19:32:24 · 154 阅读 · 0 评论 -
51nod 1344 贪心
从前扫到后,计算前缀和,维护前缀和最小值,打完收工。#include<cstdio>#include<algorithm>using namespace std;const int maxn = 50004;#define ll long long ll a[maxn],n,ans;int main(){ // freopen("in.txt","...原创 2018-08-07 16:03:56 · 94 阅读 · 0 评论 -
51nod 1091 线段重叠的问题
重点是维护当前扫过的最远的(最右)的点,排序之后贪心扫一遍,ans=max(ans,min(p[i].r,last)-p[i].l),last = max(last,p[i].r);重叠部分就是min(p[i].r,last)-p[i].l#include<cstdio>#include<algorithm>#define maxn 50050using n...原创 2018-08-04 23:35:20 · 147 阅读 · 0 评论 -
51nod 1428 活动安排问题 贪心(两种方法)
有若干个活动,第i个开始时间和结束时间是[Si,fi),同一个教室安排的活动之间不能交叠,求要安排所有活动,最少需要几个教室? Input第一行一个正整数n (n <= 10000)代表活动的个数。第二行到第(n + 1)行包含n个开始时间和结束时间。开始时间严格小于结束时间,并且时间都是非负整数,小于1000000000Output一行包含一个整数表示最少教室的个数。Input示例3...原创 2018-06-04 00:40:33 · 243 阅读 · 0 评论 -
贪心(入门简单题)
有若干个活动,第i个开始时间和结束时间是[Si,fi),只有一个教室,活动之间不能交叠,求最多安排多少个活动?Input第一行一个正整数n (n <= 10000)代表活动的个数。第二行到第(n + 1)行包含n个开始时间和结束时间。开始时间严格小于结束时间,并且时间都是非负整数,小于1000000000Output一行包含一个整数表示活动个数。Input示例31 23 42 9O...原创 2018-06-02 15:00:22 · 1149 阅读 · 2 评论 -
高校联盟 计蒜客 超市购物(二分+贪心)
超市有n种不同的商品(从1开始编号),第i种商品有一个基本花费b_ibi。小白要来买东西,如果小白买了k件商品,编号分别为x_1x1、x_2x2、..、x_kxk,那么物品x_jxj的花费为b_{x_j}bxj+x_j*kxj∗k (1<=j<=k)。也就是说,物品的花费等于它的基本花费加上它的编号乘上k。小白想要在花费不超过SP的情况下买尽量多的物品。注意,一种物品最...原创 2018-05-15 21:05:48 · 194 阅读 · 0 评论 -
乘船问题(贪心)
描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别。一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量。我们要尽量减少这次活动中的花销,所以要找出可以安置所有旅客的最少的独木舟条数。现在请写一个程序,读入独木舟的最大承载量、旅客数目和每位旅客的重量。根据给出的规则,计算要安置所有旅客必须的最少的独木舟条数,并输出结果。输入 第一行输入s,表示测试数据的组数;...原创 2018-05-17 20:23:17 · 3870 阅读 · 0 评论 -
51nod1615贪心
考虑贪心,一直向右跳,如果超过了,就要往回跳,如果超过的是偶数步数,就可以把前边的某一步变为相反方向,就可以直接到达了,因为加上一个数变成减去一个数,差值一定是该数绝对值的2倍,例如+1变成-1差了2,+2变成-2差了4这样如果超过的是奇数,就继续往前跳,知道超过的数是偶数,就和上一种情况相同了#include<stdio.h>int n;int main(){...原创 2018-09-23 21:16:40 · 111 阅读 · 0 评论