记录编号 27463 评测结果 AAAAAAAAAA
题目名称 护卫队 最终得分 100
用户昵称 Gravatarmagic 是否通过 通过
代码语言 C++ 运行时间 0.018 s
提交时间 2011-09-23 22:04:20 内存使用 0.34 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#define maxlong 10000000
using namespace std;
	double w[1005];
	double v[1005];
	double f[1005];
	double wei,len; 
	int n;
	double ans;
int main()
{
	freopen("convoy.in","r",stdin);
	freopen("convoy.out","w",stdout);
	scanf("%lf%lf%d",&wei,&len,&n);
	for (int i=1;i<=n;i++)
	{
		scanf("%lf%lf",&w[i],&v[i]);
		//printf("%0.0f %0.0f\n",w[i],v[i]);
		w[i]+=w[i-1];
	}
	f[0]=0;
	f[1]=(len/v[1])*60;
	//cout<<f[1]<<endl;
	for (int i=2;i<=n;i++)
	{
		f[i]=f[i-1]+(len/v[i])*60;
		double sv;
		sv=v[i];
		for (int j=i-1;j>=1;j--)
		{
			if (v[j]<sv)
			{
				sv=v[j];
			}
			if (w[i]-w[j-1]<=wei)
			{
				if (f[i]>f[j-1]+(len/sv)*60)
				{
					f[i]=f[j-1]+(len/sv)*60;
				}
			}
		}
	}
			printf("%0.1lf\n",f[n]);
	return 0;
}