比赛 |
20151026 |
评测结果 |
AAAAAAAAAA |
题目名称 |
摩托车游戏 |
最终得分 |
100 |
用户昵称 |
Satoshi |
运行时间 |
0.013 s |
代码语言 |
C++ |
内存使用 |
0.37 MiB |
提交时间 |
2015-10-26 21:56:31 |
显示代码纯文本
#include <fstream>
#include <algorithm>
#include <iomanip>
using namespace std;
ifstream in("carz.in");
ofstream out("carz.out");
int S;
double T;
double f[4001]={0};
double V[4001]={0};
double ans=0;
double INF=9999999;
void read()
{
int i,j;
in>>S>>T;
S/=10;
T/=60;
for(i=0;i<=4000;i++)f[i]=INF;
}
void print(double a)
{
out<<setprecision(2)<<std::fixed<<a;
}
void work()
{
int i,j;
f[0]=0;
f[1]=0.1;
for(i=5;i<=4000;i++)V[i]=7;
V[0]=V[1]=10;
V[2]=9;
V[3]=8;
V[4]=7.5;
for(i=2;i<=S;i++)
{
for(j=0;j<i;j++)
{
if(j!=0)f[i]=min(f[i],f[j]+((i-j)/V[i-j])+T);
else f[i]=min(f[i],f[j]+((i-j)/V[i-j]));
}
}
//for(i=0;i<=S;i++)out<<f[i]<<endl;
}
int main()
{
read();
work();
print(f[S]);
return 0;
}