zoukankan      html  css  js  c++  java
  • 3556 科技庄园

    3556 科技庄园

     

     时间限制: 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范围内

    分类标签 Tags 点此展开 

     
    背包dp例题,复习一下,so仅贴AC代码
    AC代码:
    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #define ref(i,x,y)for(int i=x;i<=y;i++)
    #define def(i,x,y)for(int i=x;i>=y;i--)
    using namespace std;
    int vm,n,m,T,A,s[105][105],v[105][105],f[20100];
    int main()
    {//多重背包 
        scanf("%d%d%d%d",&n,&m,&T,&A);
        vm=min(T,A-1);
        ref(i,1,n) ref(j,1,m) scanf("%d",&v[i][j]);
        ref(i,1,n) ref(j,1,m) scanf("%d",&s[i][j]);
        ref(i,1,n) ref(j,1,m) ref(k,1,s[i][j]) def(h,vm,2*(i+j))
            f[h]=max(f[h],f[h-2*(i+j)]+v[i][j]);
        printf("%d
    ",f[vm]);
        return 0;
    }
  • 相关阅读:
    MongoDB数据类型
    杭电1257
    杭电1716
    杭电1997
    杭电1492
    杭电1208
    杭电1290
    杭电1087
    杭电1568
    杭电1398
  • 原文地址:https://www.cnblogs.com/shenben/p/5778512.html
Copyright © 2011-2022 走看看