http://acm.hdu.edu.cn/showproblem.php?pid=1494

能量用0-14表示,dp[i][j]表示走到第i段,所剩能量j的最小时间。

#include<iostream>
#include<cstdio>
#include<cstring>
#define MAX 0X3f3f3f3f
using namespace std; int l,n,dp[][],a[],b[]; int main()
{
while(~scanf("%d%d",&l,&n))
{
for(int i = ;i < l;i++) scanf("%d",&a[i]);
for(int i = ;i < l;i++) scanf("%d",&b[i]);
memset(dp,0x3f,sizeof(dp));
dp[][] = a[];
int all = n*l;
for(int i = ;i <= all;i++)
{
for(int j = ;j < ;j++)
{
if(dp[i][j] == MAX) continue;
if(j == ) dp[i+][] = min(dp[i+][],dp[i][j]+a[i%l]);
else dp[i+][j+] = min(dp[i+][j+],dp[i][j]+a[i%l]);
if(j >= ) dp[i+][j-] = min(dp[i+][j-],dp[i][j]+b[i%l]);
}
}
int ans = MAX;
for(int i = ;i < ;i++) ans = min(ans,dp[all][i]);
printf("%d\n",ans);
}
return ;
}

HDU_1494_dp的更多相关文章

随机推荐

  1. Redis-NoSQL入门和概述(一)

    NoSQL简史及定义 NoSQL 这个术语最早是在 1998 年被Carlo Strozzi命名在他的轻量的,开源的关系型数据库上的,但是该数据库没有提供标准的SQL接口:在2009 年再次被Eric ...

  2. 从零开始学asyncio(上)

    这篇文章主要是介绍生成器和IO多路复用机制, 算是学习asyncio需要的预备知识. 这个系列还有另外两篇文章: 从零开始学asyncio(中) 从零开始学asyncio(下) 一. 简单爬虫实例 首 ...

  3. Idea 注册方式,亲测可用

    参考:https://www.cnblogs.com/aacoutlook/p/9036299.html 2018年3月 <License server>方式不能使用了,只好尝试<A ...

  4. es6中的面向对象写法

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  5. 从头学pytorch(十八):GoogLeNet

    GoogLeNet GoogLeNet和vgg分别是2014的ImageNet挑战赛的冠亚军.GoogLeNet则做了更加大胆的网络结构尝试,虽然深度只有22层,但大小却比AlexNet和VGG小很多 ...

  6. 测试必备之Java知识(三)—— 集合、Map相关

    集合相关 List.Set.Map的区别 类型 描述 List 允许重复对象,可插入多个null元素,有序 Set 不允许重复对象,只允许一个null元素,无序 Map 不是collection的子接 ...

  7. struts2学习第一天

    Stuts2是基于MVC设计模式成熟的Web应用框架.不仅仅是Struts1的下一个版本,是一个全新的Struts架构.由WebWork社区跟Strut社区联手打造的.(教程来自W3Cschool) ...

  8. 关于爬虫的日常复习(5)—— beautifulsoup库

  9. cocoa pods最新安装说明和使用方法

    最新版 CocoaPods 的安装流程 1.移除现有Ruby默认源 $gem sources --remove https://rubygems.org/ 2.使用新的源 $gem sources - ...

  10. 第二阶段冲刺个人任务——one

    今日任务: 修改注册界面.