有人能告诉我我哪里错了吗?
2024-09-30 23:22:20
发布于:广东
36阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int dyr(){
ll n,d,money=0,mn=0,sum=0,ok=0;
cin>>n>>d;
vector<ll> v(n-1);
vector<ll> a(n);
for(auto &it:v) cin>>it;
for(auto &it:a) cin>>it;
mn=a[0];
for(int i=0;i<n;i++){
sum+=v[i];
if(ok<sum){
ll jy=ceil((sum-ok)*1.0/d);
money+=jy*mn;
ok+=jy*d;
}
ok-=sum;
sum=0;
mn=min(mn,a[i+1]);
}
cout<<money;
return 0;
}
int main(){
freopen("road.in","r",stdin);
freopen("road.out","w",stdout);
dyr();
fclose(stdin);
fclose(stdout);
}
这里空空如也
有帮助,赞一个