求助40pts悬关
查看原帖
求助40pts悬关
797464
zfw100楼主2024/8/25 20:48
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main(){
	ll n,d,sum=0,ans=0,j;
	cin>>n>>d;
	ll v[n],q[n];
	for(ll i=1;i<n;i++)cin>>v[i];
	for(ll i=1;i<n;i++)cin>>q[i];
	for(ll i=1;i<n;i++){
	    sum=sum+v[i]-sum*2;
		for(j=i+1;j<n;j++){
			if(q[j]<q[i])break;
			sum+=v[j];
		}
		ans=ans+(sum/d+(sum%d+d-1)/d)*q[i];
		sum+=(sum/d);
		for(ll p=i;p<=j-1;p++)
		sum-=v[p];
		i=j-1;
	}
	cout<<ans;
	return 0;
}
2024/8/25 20:48
加载中...