时间限制: 1 s   空间限制: 128000 KB   题目等级 : 黄金 Gold
题目描述 Description

Life是codevs的用户,他是一个道德极高的用户,他积极贯彻党的十八大精神,积极走可持续发展道路,在他的不屑努力下STN终于决定让他在一片闲杂地里种桃,以亲身实践种田的乐趣,厉行节约,告诉人们节约的重要性!

春华秋实,在这个金秋的季节,Life带者他的宠物——PFT到了他的试验田,当他看见自己的辛勤成果时,心里是那个高兴啊!

这时Life对他的宠物PFT说:“你想不想吃桃啊?”

PFT兴奋的说:“好啊!”

Life说:“好吧,但是我只给你一定的时间,你必须在规定的时间之内回到我面前,否则你摘的桃都要归我吃!”

PFT思考了一会,最终答应了!

由于PFT的数学不好!它并不知道怎样才能在规定的时间获得最大的价值,但你是一个好心人,如果你帮助它,你的RP一定会暴涨的!

对于这个可以RP暴涨机会,你一定不会错过的是不是?

由于PFT不是机器人,所以他的体力并不是无限的,他不想摘很多的桃以至体力为0,而白白把桃给Life。同时PFT每次只能摘一棵桃树,每棵桃树都可以摘K次(对于同一棵桃每次摘的桃数相同)。每次摘完后都要返回出发点(PFT一次拿不了很多)即Life的所在地(0,0){试验田左上角的桃坐标是(1,1)}。

PFT每秒只能移动一个单位,每移动一个单位耗费体力1(摘取不花费时间和体力,但只限上下左右移动)。

输入描述 Input Description

第一行:四个数为N,M,TI,A 分别表示试验田的长和宽,Life给PFT的时间,和PFT的体力。

下面一个N行M列的矩阵桃田。表示每次每棵桃树上能摘的桃数。

接下来N行M列的矩阵,表示每棵桃最多可以采摘的次数K。

输出描述 Output Description

一个数:PFT可以获得的最大的桃个数。

样例输入 Sample Input

4 4 13 20

10 0 0 0

0 0 10 0

0 0 10 0

0 0 0 0

1 0 0 0

0 0 2 0

0 0 4 0

0 0 0 0

样例输出 Sample Output

10

数据范围及提示 Data Size & Hint

【样例解释】

可以摘到1次(1,1)或1次(2,3)或1次(3,3),体力和时间不满足再摘桃了。

【数据范围】

对于M N TI A

10<=30%<=50

10<=100%<=100

对于K

10<=100%<=100

保证结果在longint范围内

 #include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,m,t,a;
int map[][],g[],sum,c[],v[],f[];
int main()
{
scanf("%d%d%d%d",&n,&m,&t,&a);
t=min(t,a-);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
scanf("%d",&map[i][j]);
int k;
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
{
scanf("%d",&k);
if(map[i][j])
{
sum++;
g[sum]=(i+j)*;v[sum]=k;
c[sum]=map[i][j];
}
}
for(int i=;i<=sum;i++)
{
for(int j=t;j>=;j--)
for(int k=;k<=v[i];k++)
{
if(j-k*g[i]>=)
f[j]=max(f[j],f[j-g[i]*k]+k*c[i]);
}
}
printf("%d",f[t]);
return ;
}
 #include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,m,t,a;
int map[][],g[],sum,c[],v[],f[];
int main()
{
scanf("%d%d%d%d",&n,&m,&t,&a);
t=min(t,a-);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
scanf("%d",&map[i][j]);
int k;
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
{
scanf("%d",&k);
if(map[i][j])
{
sum++;
g[sum]=(i+j)*;v[sum]=k;
c[sum]=map[i][j];
}
}
for(int i=;i<=sum;i++)
{
for(int j=t;j>=;j--)
for(int k=;k<=v[i];k++)
{
if(j-k*g[i]>=)
f[j]=max(f[j],f[j-g[i]*k]+k*c[i]);
}
}
printf("%d",f[t]);
return ;
}

思路:时间 体力看上去是个二维背包,但是由于没走一个格子都是消耗一点体力一点时间,我们可以min(t,a)做成一维背包,如果这里有树,记下他的时间(记得乘以2,来回嘛!),记下他的可以采摘次数和价值,然后跑一遍背包即可

Codevs 3556 科技庄园==洛谷 P2760的更多相关文章

  1. codevs——T1044 拦截导弹 || 洛谷——P1020 导弹拦截

    http://codevs.cn/problem/1044/ || https://www.luogu.org/problem/show?pid=1020#sub 时间限制: 1 s  空间限制: 1 ...

  2. Codevs 3287 货车运输 == 洛谷P1967

    3287 货车运输 2013年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description A 国有 n 座城市,编 ...

  3. Codevs 1010 过河卒== 洛谷 1002

     时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 如图,A 点有一个过河卒,需要走到目标 B 点.卒行走规则:可以向下.或者向右.同 ...

  4. 洛谷P1395 会议(CODEVS.3029.设置位置)(求树的重心)

    To 洛谷.1395 会议 To CODEVS.3029 设置位置 题目描述 有一个村庄居住着n个村民,有n-1条路径使得这n个村民的家联通,每条路径的长度都为1.现在村长希望在某个村民家中召开一场会 ...

  5. 洛谷P1432 倒水问题(CODEVS.1226)

    To 洛谷.1432 倒水问题 题目背景 In the movie "Die Hard 3", Bruce Willis and Samuel L. Jackson were co ...

  6. 洛谷 P2155 BZOJ 2186 codevs 2301 [SDOI2008]沙拉公主的困惑

    题目描述 大富翁国因为通货膨胀,以及假钞泛滥,政府决定推出一项新的政策:现有钞票编号范围为1到N的阶乘,但是,政府只发行编号与M!互质的钞票.房地产第一大户沙拉公主决定预测一下大富翁国现在所有真钞票的 ...

  7. 洛谷P1650赛马与codevs 2181 田忌赛马

    洛谷P1650 赛马 题目描述 我国历史上有个著名的故事: 那是在2300年以前.齐国的大将军田忌喜欢赛马.他经常和齐王赛马.他和齐王都有三匹马:常规马,上级马,超级马.一共赛三局,每局的胜者可以从负 ...

  8. 洛谷P2668 斗地主==codevs 4610 斗地主[NOIP 2015 day1 T3]

    P2668 斗地主 326通过 2.6K提交 题目提供者洛谷OnlineJudge 标签搜索/枚举NOIp提高组2015 难度提高+/省选- 提交该题 讨论 题解 记录 最新讨论 出现未知错误是说梗啊 ...

  9. codevs 1048/洛谷 1880:石子归并

    题目描述 Description 有n堆石子排成一列,每堆石子有一个重量w[i], 每次合并可以合并相邻的两堆石子,一次合并的代价为两堆石子的重量和w[i]+w[i+1].问安排怎样的合并顺序,能够使 ...

随机推荐

  1. 使用grunt构建前端项目

    1. grunt构建工具是基于nodejs上的,所以在使用之前一定要先安装好nodejs 2. 安装好nodejs后,node -v查看node版本 npm-v 查看npm版本信息 3. 在需要用到的 ...

  2. 分布式数据存储 之 Redis(二) —— spring中的缓存抽象

    分布式数据存储 之 Redis(二) -- spring中的缓存抽象 一.spring boot 中的 StringRedisTemplate 1.StringRedisTemplate Demo 第 ...

  3. H3C S5024P交换机 vlan实验

    H3C S5024P交换机第二次vlan实验 实验1 与交换机端口G0/1和G0/2相连的PC1与PC2属于VLAN 1,与G0/3和G0/4相连的PC3和PC4属于VLAN 2,PC1.PC2.PC ...

  4. swfit:运算符重载 Operator Methods

    Operator Methods Classes and structures can provide their own implementations of existing operators. ...

  5. Java后端学习路线_备战

    SpringCloud项目实战 Dubbo项目实战 项目实战应涵括哪些技术: 缓存.消息队列 WEB应用服务器(Weblogic.Jetty.JBoss.WebSphere) NoSQL(MongoD ...

  6. docker 框架概述

    docker的框架 docker 使用传统的client-server架构模式,用户端通过docker client 与docker  daemon 建立通信,并将请求发送给后者,而docker后端时 ...

  7. render_to_response()

    render_to_response('模板名称',字典) 字典:第二个参数必须是为该模板创建context时所使用的字典,如果不提供第二个参数,render_response()使用一个空字典

  8. 制作JPEGImages出现的bug

    我用的是下面这个脚本进行改名字: import os import sys path = "/home/bnrc/py-faster-rcnn/data/VOCdevkit2007/VOC2 ...

  9. executeFind(XXX) is undefined for the type hibernateTemplate(大概是这个错误吧)

    两句话,jar包版本不一样,类中包含的方法可能有改变. 出错时用的是spring5.x版本,但是没有找到我的api.(不记得放在那里了),所以换了spring的版本(换成了spring3.x).问题解 ...

  10. 定位 absolute和relative比较

    absolute:脱离原来位置定位.是相对于最近的有定位的父级进行定位;如果没有有定位的父级元素,就相对文档进行定位 relative:保留原来位置进行定位,相对于自己原来的位置进行定位 下面举两个例 ...