#include<bits/stdc++.h>
using namespace std;
int *grades,*delta;
int n,t,temp,start,ended,p;
int main(){
cin>>n>>t;
grades=new int[n];
delta=new int[n];
for(int i=1;i<=n;i++){
cin>>temp;
grades[i]=temp;
}
for(int i=0;i<t;i++){
cin>>start>>ended>>p;
delta[start]=p;
if(ended+1<=n)delta[ended]=p*(-1);
}
int add=0;
int minx=100000000;
for(int i=1;i<=n;i++){
add+=delta[i];
minx=min(minx,grades[i]+add);
}
cout<<minx;
}
代码如上,带注释,还望各位能帮忙找一找问题,感谢。