[luogu1968]美元汇率(dp)

1063: [视频]动态规划入门(一维一边推1:美元和马克)

时间限制: 1 Sec  内存限制: 128 MB
提交: 1332  解决: 934
[提交] [状态] [讨论版] [命题人:admin]

题目描述

【题意】
今天6:00起床,我转身发现枕头边有100美元。
出门的时候发现门口有家冰淇淋店,拉了很长的横幅:“今天100美元和400马克互换”
第二天的横幅是:“今天100美元和300马克互换”
第三天的横幅是:“今天100美元和500马克互换”
第四天的横幅是:“今天100美元和300马克互换”
第五天的横幅是:“今天100美元和250马克互换”

第五天的晚上,我灵光一闪,决定坐时光飞机回到第一天的上午6:00,准备发大财!
我是这么做的:
Day 1 ... 用 100.0000 美元 换 400.0000 马克
晚上我手里拿着400.0000马克安心睡觉了

Day 2 ... 用 400.0000 马克 换 133.3333 美元
晚上我手里拿着133.3333美元安心睡觉了

Day 3 ... 用 133.3333 美元 换 666.6666 马克
晚上我手里拿着666.6666马克安心睡觉了

Day 4 ... 我手里拿着666.6666 马克 不换美元,因为我知道明天换更好呀
晚上我手里拿着666.6666马克安心睡觉了

Day 5 ... 用 666.6666 马克 换 266.6666 美元
晚上我手里拿着266.6666美元偷笑,我赚了166.6666美元。厉害吧?你有时光机吗?

第六天全世界都不使用马克了,所以最后一天留在手里的必须是美元!

【输入格式】
第一行是一个自然数N,1≤N≤100,表示天数。
接下来的N行中每行是一个自然数a[i],1≤a[i]≤1000。
表示预先知道的第i天100美元 和 A马克 能互换。
 
【输出格式】
一行,即最后一天晚上手里的美元数目(保留两位小数)。

【样例输入】
5
400
300
500
300
250
【样例输出】
266.67
【提示】
感受隐形路径

解题报告

(思路代码简单到不想报告:|

原谅我从前丑丑的码风叭QAQ

#include<bits/stdc++.h>
using namespace std;
const int N=1000;
double a[N],d[N],m[N];
int n;
int main()
{
  scanf("%d",&n);
  for(int i=1;i<=n;i++)cin>>a[i];
  d[1]=100;m[1]=a[1];
  for(int i=2;i<=n;i++){
      d[i]=max(d[i-1],m[i-1]*100.0/a[i]);
      m[i]=max(m[i-1],d[i-1]*a[i]/100.0);
  }
  printf("%.2f",d[n]);
}

 

 
posted @ 2019-08-27 21:17  QUEKI嶺冬  阅读(266)  评论(0编辑  收藏  举报
/*! Color themes for Google Code Prettify | MIT License | github.com/jmblog/color-themes-for-google-code-prettify */ .pln{color:#4d4d4c}ol.linenums{margin-top:0;margin-bottom:0;color:#8e908c}li.L0,li.L1,li.L2,li.L3,li.L4,li.L5,li.L6,li.L7,li.L8,li.L9{padding-left:1em;background-color:#fff;list-style-type:decimal!important;}@media screen{.str{color:#718c00}.kwd{color:#8959a8}.com{color:#8e908c}.typ{color:#4271ae}.lit{color:#f5871f}.pun{color:#4d4d4c}.opn{color:#4d4d4c}.clo{color:#4d4d4c}.tag{color:#c82829}.atn{color:#f5871f}.atv{color:#3e999f}.dec{color:#f5871f}.var{color:#c82829}.fun{color:#4271ae}} /*下面是我设置背景色,字体大小和字体*/ .cnblogs-markdown code{ background:#fff!important; } .cnblogs_code,.cnblogs_code span,.cnblogs-markdown .hljs{ font-size:16px!important; } .syntaxhighlighter a, .syntaxhighlighter div, .syntaxhighlighter code, .syntaxhighlighter table, .syntaxhighlighter table td, .syntaxhighlighter table tr, .syntaxhighlighter table tbody, .syntaxhighlighter table thead, .syntaxhighlighter table caption, .syntaxhighlighter textarea { font-size: 16px!important; } .cnblogs_code, .cnblogs_code span, .cnblogs-markdown .hljs{ font-family:consolas, "Source Code Pro", monaco, monospace !important; } //以上是代码高亮 /* 文字特效 */