语文成绩
题目描述:语文老师总是写错成绩,所以当她修改成绩的时候,总是累得不行。她总是要一遍遍地给某些同学增加分数,又要注意最低分是多少。你能帮帮她吗?
#include<bits/stdc++.h>
using namespace std;
#define N 5000001
long long d[N];//学生成绩的差分数组
int main()
{
int n,m,t0 = 0,t1;
int x,y,z;
long long mmin,s=0;
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
{
scanf("%d",&t1);
d[i] = t1 - t0;
t0 = t1;
}
while(m--)
{
scanf("%d%d%d",&x,&y,&z);
d[x] += z;
d[y+1] -= z;
}
mmin = d[1];
for(int i=1;i<=n;i++)
{
s += d[i];
if(s<mmin)mmin = s;
}
printf("%lld\n",mmin);
return 0;
}