可以通过无限次的换车来完成旅程,每次换车又可以走大小为(1 sim 10)的距离,完全背包裸题,即体积大小为(1 sim 10)的每种物品均为无限个。
const int N=510;
int f[N];
int a[N];
int n;
int main()
{
for(int i=1;i<=10;i++) cin>>a[i];
cin>>n;
memset(f,0x3f,sizeof f);
f[0]=0;
for(int i=1;i<=10;i++)
for(int j=i;j<=n;j++)
f[j]=min(f[j],f[j-i]+a[i]);
cout<<f[n]<<endl;
//system("pause");
return 0;
}