首页 > 其他 > 详细

HDU 1260: Tickets

时间:2018-07-17 13:13:38      阅读:204      评论:0      收藏:0      [点我收藏+]

2
2
20 25
40
1
8

08:00:40 am

08:00:08 am

分析:

经典DP题目。状态转移方程:dp[i]=min(dp[i-1]+a[i],dp[i-2]+b[i])

技术分享图片
#include <stdio.h>
#include <string.h>
int min(int a,int b){
    return a>b?b:a;
}
int a[2005],b[2005],dp[2005];
int main(int argc, char *argv[]) {
    int t,temp,h;
    scanf("%d",&t);
    while(t--){
        memset(a,0,sizeof(a));
        memset(b,0,sizeof(b));
        memset(dp,0,sizeof(dp));
        int n;
        scanf("%d",&n);
        for(int i=1;i<=n;++i)scanf("%d",&a[i]);
        for(int i=2;i<=n;++i)scanf("%d",&b[i]);
        dp[1]=a[1];
        dp[2]=min(a[1]+a[2],b[2]);
        for(int i=3;i<=n;++i)dp[i]=min(dp[i-1]+a[i],dp[i-2]+b[i]);
        temp=dp[n];
        h=8+temp/3600;
        printf("%02d:%02d:%02d %cm\n",h>12?h-12:h,temp%3600/60,temp%60,h>12?p:a);
    }
    return 0;
}
View Code

 

HDU 1260: Tickets

原文:https://www.cnblogs.com/Rhythm-/p/9322676.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!