Submission
Status:
(-SSSSSSSSSSSS)(-SSSSSS)(SSSSSSSSS)
Subtask/Task Score:
{0/30}{0/30}{0/40}
Score: 0
User: Nathako9n
Problemset: Red Zone
Language: cpp
Time: 0.015 second
Submitted On: 2026-01-24 09:50:21
#include <bits/stdc++.h>
#define ll long long
#define endl '\n'
using namespace std;
const int N = 1e5+5;
ll n,m,l,d;
ll ar[N+3],bom[N+3];
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cin>>n>>m>>l>>d;
for(int i=1;i<=n;i++)cin>>ar[i];
for(int i=1;i<=m;i++)cin>>bom[i];
int l=1,r=m;
while(l<=r){
int mid=l+(r-l)/2;
bool ch=1;
vector<ll>vec(n+2,0);
// for(int i=1;i<=n;i++)vec[i]=ar[i];
for(int i=1;i<=mid;i++){
vec[max(1LL,bom[i]-l)]-=d;
vec[min(n+1,bom[i]+l+1)]+=d;
}
for(int i=1;i<=n;i++){
vec[i]+=vec[i-1];
if(ar[i]+vec[i]>0){
ch=0;
break;
}
}
if(ch)r=mid-1;
else l=mid+1;
}
if(l>r)cout<<-1;
else cout<<l;
}
/*
6 8 1 4
4 7 6 2 5 3
1
3
6
1
4
6
5
3
*/