背景

2009NOIP余姚中学内部暑期集训
7月14号模拟赛第三题

描述

Cpg 正在游览一个梦中之城,在这个城市中有n棵摇钱树。。。这下,可让Cpg看傻了。。。可是Cpg只能在这个城市中呆K天,但是现在摇钱树已经成熟了,每天每棵都会掉下不同的金币。Cpg每天可以砍掉其中一颗,并获得其树上说有的金币(怎么会有这种好事。。。)。请你帮助Cpg算出他在这K天中最多能获得多少金币。

格式

输入格式

每个文件中有不超过10组测试数据。

每组测试数据:
第一行两个整数n,K (1<=K<=n<=1000)
第二行n个整数Mi (Mi <= 100000).表示Cpg刚看到这n棵树时每刻树上的金币数。

第三行n个整数 Bi.(Bi<=1000)表示每颗摇钱树,每天将会掉落的金币。

以n=K=0结束。

输出格式

对每组测试数据,输出仅一行,Cpg在K天中能获得的最大金币数。

样例1

样例输入1

3 3
10 20 30
4 5 6
4 3
20 30 40 50
2 7 6 5
0 0
Copy

样例输出1

47
104
Copy

限制

各个测试点1s

提示

样例1的解释:第一天摘第三个果子得到30,第二天摘第二个果子得到15,第三天摘第一个果子得到2,30+15+2=47

这道题先觉得用状压做:f[i][sta]表示前i个状态为sta时的最优值,开不下

再仔细想想这道题能不能贪心?

如果已经确定了一种方案,其每个物品的前后顺序是否不再用枚举?

明显可以,如果已经确定要选哪几棵那肯定先看那些掉的快的,再砍那些掉的慢的

就可以优化啦

令f[i][j]表示前i天中砍了前j棵掉的快的树//为方便动归规定第j棵必须取

所以f[i][j]=max{f[i][j-1],f[i-1][j-1]+。。。。。。}

在讨论一下这个最优子结构是否合理

明显。

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
const int N=1005;struct note{int tree,down;friend bool operator < (note a,note b){return a.down>b.down;}}A[N];
int n,m,f[N][N];
int main()
{while(~scanf("%d %d",&n,&m)&&(n|m)){memset(f,0,sizeof(f));for(int i=1;i<=n;i++){scanf("%d",&A[i].tree);}for(int i=1;i<=n;i++){scanf("%d",&A[i].down);}sort(A+1,A+1+n);//f[i][j]表示前K天取掉的第j个的最大金币值 //规定第j个必须取 for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){f[i][j]=max(f[i][j-1],f[i-1][j-1]+A[j].tree-A[j].down*(i-1));}}int ans=0;for(int i=1;i<=m;i++){ans=max(ans,f[i][n]);}cout<<ans<<endl;}
}

转载于:https://www.cnblogs.com/dancer16/p/6964875.html

vijos1574 摇钱树相关推荐

  1. iPhone7,苹果最后的摇钱树

    据各种权威机构统计,iPhone手机常年攫取整个市场70%以上的利润,最恐怖的数字是Canaccord Genuity调研报告中的86%.据分析师Walkly调研,苹果公司垄断了智能手机市场大约86% ...

  2. 2011年RSA大会纪实:手机恶意软件依旧是摇钱树

    今年 RSA 大会 (RSA Conference) 的主要讯息之一,就是手机病毒威胁已经成为今日实际而迫切的问题.在大会上排山倒海的 云安全 讨论声中,还是有多场专门探讨移动安全威胁的演讲,提出许多 ...

  3. 2022圣诞树(C语言摇钱树版本)

    逐梦编程,让中华屹立世界之巅. 简单的事情重复做,重复的事情用心做,用心的事情坚持做: 文章目录 前言 一.个人感悟 二.圣诞树由来 三.圣诞树发展历史演变 四.常见的圣诞树种类 五.摇钱圣诞树效果展 ...

  4. 摇钱树--Intel唯一指定推荐的网吧管理软件

    摇钱树网吧管理软件为什么会成为Intel唯一指定推荐的网吧管理软件的秘诀:              从功能上摇钱树网管软件功能全面,具有安全.稳定,简便.容易操作等特点,彻底解决网吧常见的顾客逃费. ...

  5. 梦幻西游摇钱树苗怎么种

    摇钱树苗一直是各位汉子妹纸们最爱的一个娱乐玩法,摇钱树苗的奖励更是引起爱种树苗的人越来越多.当然树苗的产出方式也减少了. 小记在经历各种种植测试方法,现在给大家带来这篇摇钱树苗新玩法. 首先给大家看下 ...

  6. 金果摇钱树互助群_【android免root脚本制作】自动坐标操作手机——京东金融程序金果摇钱树自动收金果...

    今天618,大伙都在京东金融程序金果摇钱树收金果,所以给大家介绍如何简单制作一个,自动点击手机指定位置的脚本.该简单的案例实现效果也是基于auto.js上的,如果对auto.js不清楚的话可以看看基础 ...

  7. html5 摇钱树效果,刮刮乐直播,5张就出一棵摇钱树苗,很不错!

    [17173独家原创报道,转载请注明出处] 专用点刮刮乐,很多玩家都是非常熟悉的吧?在网易充值中心,每充值1000点专用点,即可获得一次抽奖机会,就是大家所说的刮刮乐. 刮刮乐可是非常的好的道具哦,只 ...

  8. 网络斗士Mozilla CEO:火狐本身不是摇钱树

    2007年5月,美国权威经济杂志<福布斯>对作为火狐浏览器的领军人物-威妮弗蕾德•米切尔•贝克女士进行了专访.贝克女士在接受记者采访时表示,目前行业内的各家公司都极为重视浏览器的开发工作. ...

  9. 如何让微信商城变成你的“摇钱树”

    这是一个'无微信不营销'的美好时代.微信营销成为商家必备的一种产品营销.企业宣传等方面最为重要的掘金工具.移 动互联生活将会改变世界,微信营销已经改变了传统营销,企业.商家要想赢得市场,必须高度重视, ...

最新文章

  1. python slice是共享内存吗_在共享内存中使用numpy数组进行多处理
  2. Hyper-V 虚拟机快照:常见问题
  3. mysql a锁_MYSQL中的锁
  4. 转:Apache2 httpd.conf 中文版
  5. java图片旋转90度_Java实现图片内容无损任意角度旋转
  6. ZooKeeper性能测试
  7. fiddler4 The system proxy was changed. Click to reenable capturing.
  8. 小程序生态助力挖掘自有App流量
  9. “算法即芯片”有点扯,互联网公司为何热衷造概念?
  10. 微信支付-小程序支付全流程
  11. Windows7系统优化,优化达到30多项,速度大幅提升,
  12. VVC/VTM:代码学习——CIIP详细过程
  13. 计算机学校迎新条幅,学校迎新条幅内容
  14. 【C语言刷题】青蛙跳台阶
  15. MySQL字段类型与Java中类型的对应
  16. Tomoya【省选模拟赛】
  17. 获得lazada商品评论列表
  18. 一文搞懂布尔代数基本逻辑运算
  19. Processing 案例 | 圆圈的华尔兹
  20. CSS 基本知识梳理-续

热门文章

  1. JIRA-使用教程_问题类型_创建、方案配置
  2. 给me打打气(python语言)
  3. android单元测试作用,Android单元测试(二):再来谈谈为什么
  4. 父の天秤棒――清明祭り作者他郷客
  5. OPPOA37m_官方线刷包_救砖包_解账户锁
  6. 如何克服Leetcode做题的困境
  7. 谨以此诗感谢纳兰秋及他的著作:《情到深处即为诗》
  8. 小米机器人遭到了网友群体嘲讽,直接越过了青年到80岁了
  9. 利用MS11_003 IE漏洞攻击Windows7主机-代号 永恒之蓝
  10. cython 安装升级_软件依赖无烦恼——用TensorMan安装Tensorflow 训练模型[已更新]