rt,样例是能过的,感觉写的差分没啥问题,但是全TLE
#include <bits/stdc++.h>
using namespace std;
inline int read(){
int x = 0,f = 1;
char c = getchar();
while (!isdigit(c)){
if (c == '-'){
f = -1;
c = getchar();
}
}
while (isdigit(c)){
x = x*10+c-'0';
c = getchar();
}
return x*f;
}
int a[100100],d[100100];
signed main(){
int ans = 101111;
int n = read(),p = read();
for (int i=1;i<=n;i++){
a[i] = read();
}
for (int i=1;i<=n;i++){
d[i] = a[i]-a[i-1];
}
for (int i=0;i<p;i++){
int x = read(),y = read(),z = read();
d[x]+=z;
d[y+1]-=z;
}
for (int i=1;i<=n;i++){
a[i] = a[i-1]+d[i];
if (ans>a[i]){
ans = a[i];
}
}
cout<<ans<<endl;
return 0;
}