http://codeforces.com/problemset/problem/702/D
去邮局取东西,从家到达邮局的距离为d, 它可以选择步行或者开车,车每走 k 公里就要花费 t秒修一次才可以继续开,车每公里花费 a秒,步行每公里花费 b秒。依次给出d, k, a, b, t。问最少需要花费多少时间到达邮局。车刚开始时是好的。
初中数学题。
#include <bits/stdc++.h>
using namespace std;
long long d,k,a,b,t,x,y,z;
long long ans,c;
int main(){
cin >> d >> k >> a >> b >> t;
if (k>=d){
ans=a*d;
}
else{
ans+=a*k;
d-=k;
c=min(t+a*k,b*k);
ans+=d/k*c;
d%=k;
c=min(t+a*d,b*d);
ans+=c;
}
cout << ans << endl;
}
本文探讨了一个人从家到邮局的最短时间路径选择问题。通过对比步行与驾车两种方式的时间消耗,该算法确定了最佳出行方案。具体考虑了车辆维修时间和不同出行方式的速度。
773

被折叠的 条评论
为什么被折叠?



