提交时间:2025-12-06 14:38:24
运行 ID: 366085
#include<bits/stdc++.h> using namespace std; const int N=100010; int a[N],b[N]; int n,k,l,r,p; int main(){ cin>>n>>k; for(int i=1; i<=n; i++){ cin>>a[i]; //求差分数组 b[i]=a[i]-a[i-1]; } //k次操作 for(int i=1; i<=k; i++){ cin>>l>>r>>p; b[l]=b[l]+p; b[r+1]=b[r+1]-p; } //求b数组的前缀和,就是a数组做了k次操作 for(int i=1; i<=n; i++){ b[i]=b[i-1]+b[i]; cout<<b[i]<<' '; } return 0; }