📄 pku2744.java
字号:
import java.io.*;
import java.util.*;
class Main
{
static double b,v,e,f;
static int r;
static double t[]=new double[10001];
static double ft[]=new double[101];
public static void main(String args[]) throws Exception
{
Scanner cin=new Scanner(System.in);
int n,a[],x;
int i,j;
while(true)
{
n=cin.nextInt();
if(n==0) break;
a=new int[n+1];
for(i=0;i<n;i++) a[i+1]=cin.nextInt();
a[0]=0;
b=cin.nextDouble();
r=cin.nextInt();
v=cin.nextDouble();
e=cin.nextDouble();
f=cin.nextDouble();
for(i=0;i<a[n];i++)
{
if(i<r) t[i+1]=t[i]+1/(v-f*(r-i));
else t[i+1]=t[i]+1/(v-e*(i-r));
}
for(i=1;i<=n;i++) ft[i]=1e11;
ft[0]=0;
for(i=0;i<n;i++)
{
for(j=i+1;j<=n;j++)
{
int temp=a[j]-a[i];
if(t[temp]+ft[i]<ft[j]&&j==n)
ft[j] = ft[i] + t[temp];
else if(t[temp]+ft[i]+b<ft[j])
ft[j] =ft[i]+t[temp]+b;
}
}
System.out.printf("%.4f\n",ft[n]);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -