《关于本蒟蒻照着老师的代码抄但还是35pts这件事
查看原帖
《关于本蒟蒻照着老师的代码抄但还是35pts这件事
917775
_buzhidao_楼主2023/11/25 17:05

record

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
long long n,d,v[N],y[N];
struct Point{
    long long a,id;
}q[N];
bool cmp(Point a,Point b){
    if(a.a!=b.a) return a.a<b.a;
    return a.id<b.id;
}
int main(){
    cin>>n>>d;
    for(int i=1;i<=n-1;++i){
        cin>>v[i];
        v[i]+=v[i-1];
        y[i]=(v[i]+d-1)/d;
    }
    for(int i=1;i<=n;++i){
        cin>>q[i].a;
        q[i].id=i;
    }sort(q+1,q+n+1,cmp);
    long long r=n-1,sum=0,k=1;
    for(;k<=n;){
        if(q[k].id<r){
            sum+=(y[r]-y[q[k].id-1])*q[k].a;
            r=q[k].id-1;
        }k++;
    }
    cout<<sum;
    return 0;
}
2023/11/25 17:05
加载中...