DP: windows 2013

题目描述 Description

话说adamyi编的Windows 2013超时了(- -!),所以他不得不在自己家门口亲眼见证这个电影般的场景。虽然他不想错过这个美妙的时刻,但是他的肚子一再抗议,要求先吃完这最后的晚餐。

现在adamyi准备依次吃n道菜。但是他只使用勺子和筷子吃,勺子和筷子可以交替使用,但是同一种菜只能用一种餐具,在开饭前他拿的是筷子。用勺子和筷子吃第i道菜的时间分别是a_i和b_i。吃第i道菜之前筷子和勺子交换的时间为c_i。

现在请你告诉adamyi按他的计划依次吃完这n道菜,最小需要多少时间。

输入描述 Input Description

第一行,一个正整数n(1<=n<=100)
以下n行,分别是三个正整数a_i,b_i,c_i(1<=a_i,b_i,c_i<=10000)

输出描述 Output Description

一个数,最短时间

样例输入 Sample Input

3

20 40 20

10 4 25

90 100 5

样例输出 Sample Output
139

一道比较水的dp

用f[i,1]表示当第i道菜用勺子吃时,前i道菜所用的最少时间

用f[i,2]表示当第i道菜用筷子吃时,前i道菜所用的最少时间

f[i,1]=min{f[i-1,1]+a[i],

                f[i-1,2]+c[i]+a[i]}

f[i,2]=min{f[i-1,2]+b[i],

                f[i-1,1]+c[i]+b[i]}

PS:这道题说的是一开始拿筷子

    so,f[1,1]=c[1]+a[1]

          f[1,2]=b[1];

var f:array[1..100,1..2]of longint;
    a,b,c:array[1..100]of longint;
    i,j,k:longint;
    m,n:longint;function min(x,y:longint):longint;
         begin if x>y
                  then exit(y)
                  else exit(x);
         end;
begin readln(n);     
      for i:=1 to n do         
          readln(a[i],b[i],c[i]);     
      f[1,1]:=a[1];     
      f[1,2]:=b[1];     
      for i:=2 to n do         
          for j:=1 to 2 do             
               begin f[i,1]:=min(f[i-1,1]+a[i],f[i-1,2]+c[i]+a[i]);                   
                     f[i,2]:=min(f[i-1,2]+b[i],f[i-1,1]+c[i]+b[i]);             
               end;  
      writeln(min(f[n,1],f[n,2]));
end.
时间: 2024-08-02 13:35:43

DP: windows 2013的相关文章

1695 windows 2013

1695 windows 2013 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 话说adamyi编的Windows 2013超时了(- -!),所以他不得不在自己家门口亲眼见证这个电影般的场景.虽然他不想错过这个美妙的时刻,但是他的肚子一再抗议,要求先吃完这最后的晚餐. 现在adamyi准备依次吃n道菜.但是他只使用勺子和筷子吃,勺子和筷子可以交替使用,但是同一种菜只能用一种餐具,在开饭前他拿的是筷子.用

windows 2013(codevs 1695)

题目描述 Description 话说adamyi编的Windows 2013超时了(- -!),所以他不得不在自己家门口亲眼见证这个电影般的场景.虽然他不想错过这个美妙的时刻,但是他的肚子一再抗议,要求先吃完这最后的晚餐. 现在adamyi准备依次吃n道菜.但是他只使用勺子和筷子吃,勺子和筷子可以交替使用,但是同一种菜只能用一种餐具,在开饭前他拿的是筷子.用勺子和筷子吃第i道菜的时间分别是a_i和b_i.吃第i道菜之前筷子和勺子交换的时间为c_i. 现在请你告诉adamyi按他的计划依次吃完这

Windows API参考大全新编

书名:新编Windows API参考大全 作者:本书编写组 页数:981页 开数:16开 字数:2392千字 出版日期:2000年4月第二次印刷 出版社:电子工业出版社 书号:ISBN 7-5053-5777-8 定价:98.00元 内容简介 作为Microsoft 32位平台的应用程序编程接口,Win32 API是从事Windows应用程序开发所必备的.本书首先对Win32 API函数做完整的概述:然后收录五大类函数:窗口管理.图形设备接口.系统服务.国际特性以及网络服务:在附录部分,讲解如何

boost date time

#include <boost/timer.hpp> #include <boost/progress.hpp> #include <iostream> #include <sstream> #include <fstream> #include <string> #include <vector> #include <Windows.h> #include <boost/date_time/gregor

海量WEB日志分析

Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项目包括,YARN, Hcatalog, Oozie, Cassandra, Hama, Whirr, Flume, Bigtop, Crunch, Hue等. 从2011年开始,中国进入大数据风起云涌的时代,以Hadoop为代表的家族软件,占据了大数据处理的广阔地盘.开源界

【转】Pro Android学习笔记(十七):用户界面和控制(5):日期和时间控件

目录(?)[-] DatePicker和TimePicker控件 DigitalClock和AnalogClock控件 DatePicker和TimePicker控件 使用DatePicker和TimePicker,故名思议,用户可以对时间进行选择.XML代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout ...... >     <TextView ......  an

Codevs 1695 Windows2013

时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 话说adamyi编的Windows 2013超时了(- -!),所以他不得不在自己家门口亲眼见证这个电影般的场景.虽然他不想错过这个美妙的时刻,但是他的肚子一再抗议,要求先吃完这最后的晚餐. 现在adamyi准备依次吃n道菜.但是他只使用勺子和筷子吃,勺子和筷子可以交替使用,但是同一种菜只能用一种餐具,在开饭前他拿的是筷子.用勺子和筷子吃第i道菜的时间分别是a_i和b_i.吃第i道

Linux 内核引导参数简介

概述 内核引导参数大体上可以分为两类:一类与设备无关.另一类与设备有关.与设备有关的引导参数多如牛毛,需要你自己阅读内核中的相应驱动程序源码以获取其能够接受的引导参数.比如,如果你想知道可以向 AHA1542 SCSI 驱动程序传递哪些引导参数,那么就查看 drivers/scsi/aha1542.c 文件,一般在前面 100 行注释里就可以找到所接受的引导参数说明.大多数参数是通过"__setup(... , ...)"函数设置的,少部分是通过"early_param(..

海量Web日志分析 用Hadoop提取KPI统计指标

前言 Web日志包括着站点最重要的信息,通过日志分析.我们能够知道站点的訪问量,哪个网页訪问人数最多,哪个网页最有价值等.一般中型的站点(10W的PV以上),每天会产生1G以上Web日志文件. 大型或超大型的站点,可能每小时就会产生10G的数据量. 对于日志的这样的规模的数据,用Hadoop进行日志分析,是最适合只是的了. 文件夹 Web日志分析概述 需求分析:KPI指标设计 算法模型:Hadoop并行算法 架构设计:日志KPI系统架构 程序开发1:用Maven构建Hadoop项目 程序开发2: