记录编号 33035 评测结果 AAAAAAAAAA
题目名称 摩托车游戏 最终得分 100
用户昵称 Gravatarkaaala 是否通过 通过
代码语言 C++ 运行时间 0.034 s
提交时间 2011-11-09 13:15:14 内存使用 0.27 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstdlib>

using namespace std;

const int oo=0x7fffffff;

int s,t,l;
double f[1001],ans,tt;

int getsp(int x)
{
	if(x<=10)
		return 100;
	if(x>10&&x<=20)
		return 90;
	if(x>20&&x<=30)
		return 80;
	if(x>30&&x<=40)
		return 75;
	return 70;
}

void dp()
{
	int i,j;
	double sum;
	f[0]=0;
	l=s/10;
	for(i=1;i<=l;i++)
	{
		f[i]=oo;
		for(j=0;j<i;j++)
		{
			sum=(double)((i-j)*10)/getsp((i-j)*10);
			if(f[j]+sum+tt<f[i])
				f[i]=(double)f[j]+sum+tt;
		}
	}
}

int main()
{
	freopen("carz.in","r",stdin);
	freopen("carz.out","w",stdout);
	scanf("%d%d",&s,&t);
	tt=(double)t/60;
	dp();
	ans=f[l]-tt;
	printf("%.2lf\n",ans);
	return 0;
}