傳送門
輸入乙個長度為n的整數序列。
接下來輸入m個操作,每個操作包含三個整數l, r, c,表示將序列中[l, r]之間的每個數加上c。
請你輸出進行完所有操作後的序列。
第一行包含兩個整數n和m。
第二行包含n個整數,表示整數序列。
接下來m行,每行包含三個整數l,r,c,表示乙個操作。
共一行,包含n個整數,表示最終序列。
定義乙個vis陣列,用來標記每次進行的操作。
#includeusing namespace std;
# define ll long long
int a[1010000];
int vis[101000];
int main()
for(int i = 1; i <= n; i++)
vis[i] += vis[i-1];
for(int i = 1; i <= n; i++)
printf("%d ",a[i] + vis[i]);
printf("\n");
return 0;
}
Acwing演算法基礎 2 6 差分
原文 原文連線 類似於數學中的求導和積分,差分可以看成字首和的逆運算。差分陣列 首先給定乙個原陣列a a 1 a 2 a 3 a n 然後我們構造乙個陣列b b 1 b 2 b 3 b i 使得 a i b 1 b 2 b 3 b i 也就是說,a陣列是b陣列的字首和陣列,反過來我們把b陣列叫做a陣...
AcWing 差分矩陣 二維差分
時 空限制 1s 64mb 輸入乙個n行m列的整數矩陣,再輸入q個操作,每個操作包含五個整數x1,y1,x2,y2,c,其中 x1,y1 和 x2,y2 表示乙個子矩陣的左上角座標和右下角座標。每個操作都要將選中的子矩陣中的每個元素的值加上c。請你將進行完所有操作後的矩陣輸出。第一行包含整數n,m,...
ACWING演算法經典 797 一維差分演算法
原題鏈結 寫法一 先構造查分數列b n include using namespace std const int n 100010 int n,m,l,r,c int a n b n int main for int i 1 i n i b i b i 1 b i 求差分陣列的字首和,字首和即為所...