第二点五个不高兴的小明

摘要:
问题描述有一条长为n的走廊,小明站在走廊的一端,每次可以跳过不超过p格,每格都有一个权值wi。小明要从一端跳到另一端,不能回跳,正好跳t次,请问他跳过的方格的权值和最大是多少?输入格式输入的第一行包含两个整数n,p,t,表示走廊的长度,小明每次跳跃的最长距离和小明跳的次数。表示小明跳过的方格的权值和的最大值。样例输入85334-1-1001876样例输出12数据规模和约定1˂=n,p,t˂=1000,-1000˂=wi˂=1000。

问题描述
有一条长为n的走廊,小明站在走廊的一端,每次可以跳过不超过p格,每格都有一个权值wi。
小明要从一端跳到另一端,不能回跳,正好跳t次,请问他跳过的方格的权值和最大是多少?
输入格式
输入的第一行包含两个整数n, p, t,表示走廊的长度,小明每次跳跃的最长距离和小明跳的次数。
接下来n个整数,表示走廊每个位置的权值。
输出格式
输出一个整数。表示小明跳过的方格的权值和的最大值。
样例输入
8 5 3
3 4 -1 -100 1 8 7 6
样例输出
12
数据规模和约定
1<=n, p, t<=1000, -1000<=wi<=1000。

#include<iostream>
using namespace std;

const int N = 1010, INF = 0x3f3f3f3f;

int w[N];
int f[N][N];
int n, p, t;

int main(){
    
    cin >> n >> p >> t;
    for(int i = 1; i <= n; i ++) cin >> w[i];
    
    //w[0] = 0; 
    
    for(int i = max(n - p, 0); i <= n; i ++) f[i][1] = w[i];
    
    for(int i = n; i >= 0; i --)
        for(int j = 2; j <= t; j ++){
            f[i][j] = -INF;
            for(int k = 1; k <= p && i + k <= n; k ++) f[i][j] = max(f[i][j], f[i + k][j - 1]);
            if(f[i][j] != -INF) f[i][j] += w[i];
        }
            
    cout << f[0][t];
}

免责声明:文章转载自《第二点五个不高兴的小明》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇《算法导论》(项目)使用接口自动登陆滴滴打码网站下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

嵌入式linux GUI--DirectFB + GTK至尊秘笈

我开始在x86上构建GTK环境。首先,我选择了最新版本。然后,我看到了GTK在帧缓冲区上以两种模式运行的介绍:DirectFB和linuxfb,而Linuxfb项目似乎已经停止。主要方向是DirectFB。后来,我找到了一个DirectFB+GTK的英文文档,它基本上使用了最新版本。许多软件包可以使用系统自己的,因此您可以编译必要的源代码。一开始,编译并不成...

kernel: blk_update_request: I/O error, dev fd0, sector 0

检查后,控制台无法登录。重新启动虚拟机,报告下图,然后执行journalctl以显示以下系统消息日志原因搜索。。。...

git使用说明

初次使用请参考百度,google,博客园。1修改文件并提交到github[luwenwei@dev01v~/git/helww/labs]$vimREADME[luwenwei@dev01v~/git/helww/labs]$gitdiffdiff--gita/READMEb/READMEindex39d8172..464c83f100644---a/REA...

使用Docker构建redis集群

将六个独立的Redis节点关联到主机上的Redis集群中。Redis部落。rb是Redis官方提供的一个ruby脚本,用于构建Redis集群并修改Redis conf将其移动到上部路径/usr/docker_root/redis_Cluster/。受保护模式norequipassa1s2W3l4%Greunbind无法连接到凹坑以构建Redis基本映像。9....

PLSQL 美化规则文件详解

开始---①createtablestudent;结束;--② 美化效果是:开始——① CREATETABLESTUDENT;结束;--②...

动态表单

在完成数据表元数据的维护后,关键点是生成表单。表单生成主要基于上表,该表记录了类型、长度、字段是否可以为空、界面显示方法以及表单何时生成等一系列信息。用这个生成表单并不难,嗯,有句话说得好,“困难的事情必须容易完成”。最后,最困难的事情是由一些简单的问题组成的。由于现在使用了struts 2,因此需要对接口进行一系列判断,代码如下:˂s:iftest='#f...