样例过了,但全wa了
查看原帖
样例过了,但全wa了
993284
lover520楼主2024/8/24 22:02
#include <bits/stdc++.h>  
using namespace std;  
const int N=1e5;  
long long n,d,a[N],b[N],money,l,y=0;  
int main(){  
    cin>>n>>d;  
    for(int i=1;i<=n-1;i++){  
        cin>>a[i];  
    }
    for(int i=1;i<=n;i++){
        cin>>b[i];
    }  
    b[n]=N;  
    money=ceil(a[1]*1.0/d)*b[1];  
    y=ceil(a[1]*1.0/d)*d-a[1];  
    for(int i=2;i<=n-1;i++){  
        int f=0,juli,k;  
        for(int j=i+1;j<=n;j++){  
            if(b[i]>b[j]){  
                k=j;  
                f=1;  
                break;  
            }  
        }  
        if(f==1){  
            for(int j=i;j<k;j++){  
                juli+=a[j];  
            }  
            l=juli-y;  
            money+=b[i]*ceil(l*1.0/d); 
            y=ceil(l*1.0/d)*d-l;  
            i=k-1;  
            f=0;  
        }else{  
            l=a[i]-y;  
            money+=b[i]*ceil(l*1.0/d); 
            y=ceil(l*1.0/d)*d-a[i];  
        }  
    }  
    cout<<money<<endl;  
    return 0;  
}  
2024/8/24 22:02
加载中...