cspJ t2求调
  • 板块灌水区
  • 楼主_0o0_
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/10/24 19:36
  • 上次更新2023/10/24 20:57:05
查看原帖
cspJ t2求调
671610
_0o0_楼主2023/10/24 19:36

只有40qwq

#include<bits/stdc++.h>
using namespace std;
#define SIZE 100010
long long n,d;
long long v[SIZE];
long long a[SIZE];
long long w,res;
int main()
{
	cin>>n>>d;
	for(int i=2;i<=n;i++)
	{
		cin>>v[i];
		w+=v[i];
	}
    if(w%d==0)
    {
        w/=d;
    }
    else
    {
        w=w/d+1;
    }
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	res=w*a[1];
	long long last=1,t=0;
	for(int i=2;i<=n;i++)
	{	
        if(t>=v[i])
        {
        	t-=v[i];
		}
		else
		{
			v[i]-=t;
			if(v[i]%d==0)
			{
				w-=v[i]/d;
				t=0;
			}
			else
			{
				w-=v[i]/d+1;
				t=v[i]%d;
			}
		}		
		if(a[last]>a[i])
		{
			res-=w*(a[last]-a[i]);
			last=i;
		}
	}
	cout<<res;
	return 0;
}
2023/10/24 19:36
加载中...