rt
你谷奇妙数据居然让我过了
手搓数据
5 2
2 2 2 2 2
3 4 5
3 1 2
#include<iostream>
using namespace std;
#define f(n) for(int i=1;i<=n;i++)
struct node{
int l,r,o;
}f[1000001];
int n,m,a[1000001],u[1000001];
int main()
{
cin>>n>>m;
f(n)cin>>u[i];
for(int i=n;i>=1;i--)a[i]=u[i]-u[i-1];
f(m)
{
cin>>f[i].o>>f[i].l>>f[i].r;
a[f[i].l]-=f[i].o;
a[f[i].r+1]+=f[i].o;
}
f(n)
{
a[i]+=a[i-1];
if(a[i]<0)
{
for(int j=1;j<=m;j++)
if(f[j].l<=i&&i<=f[j].r)
{
u[i]-=f[j].o;
if(u[i]<0)
{
cout<<"-1\n"<<j;
return 0;
}
}
}
}
cout<<"0";
return 0;
}