#include<bits/stdc++.h>
using namespace std;
int n,m,r[1000010],d[1000010],s[1000010],t[1000010],f[1000010];
int check(long long mid){
//不知道该怎么办
}
int main(){
cin>>n>>m;int u=1;
for(int i=1;i<=n;i++)scanf("%d",&r[i]);
for(int i=1;i<=m;i++){
scanf("%d%d%d",&d[i],&s[i],&t[i]);
f[s[i]]+=d[i];f[t[i]+1]-=d[i];
}for(int i=1;i<=n;i++){
f[i]=f[i-1]+1;
if(f[i]>r[i])u=0;
}if(u==0)cout<<0;
else{
cout<<-1<<endl;
memset(f,0,sizeof(f));
int l=0,r=n+1;
while(l+1<r){
int mid=(l+r)/2;
if(check(mid))l=mid+1;
else r=mid-1;
}
}
return 0;
}
1 个赞
题目或题面,你要养成良好习惯
1 个赞
知道
2 个赞
所以,题目呢!?还是你A了?
1 个赞
A了
1 个赞