雪球(snowball)

發布時間: Feb. 27, 2021, 2:05 a.m.   最後更新時間: Feb. 27, 2021, 2:07 a.m.   時間限制: 4000ms   記憶體限制: 256M

JOI平原是一個從西延伸到東的大平原,我們可以把它當成一條數線。每個JOI平原上的點都被表示成座標。數線的正方會對應到JOI平原的東方。JOI平原迎來了冬季。現在有$N$顆編號從西往東數分別為$1$到$N$的雪球。雪球$i$一開始在座標為整數$X_i$的點。

你有$Q$筆關於吹過JOI平原上的風的紀錄,每筆紀錄$Wj$分別代表第$j$天的資料,如果$W_j$是正的代表他吹向東方,否則他吹向西方,且風的強度為$|W_j|$。

當風吹來時,雪球將會根據風吹的方向移動$|W_j|$格。也就是說,如果一個雪球於第$j$天開始時在座標為$X$的地方,那這一天結束時他會在座標$X+W_j$。所有雪球在每一天都以相同速度被移動。

一開始JOI平原被雪給覆蓋著,如果一個雪球在移動時經過了一段被雪涵蓋的區間,那顆雪球會被捲上這個區間的雪,雪球的重量將會增加同時該段區間的雪將消失。也就是說,如果區間$a$到$a+1$被雪給覆蓋,且有個雪球經過了這段區間,則雪球的重量將增加$1$且區間$a$到$a+1$的雪就消失了。如果雪球經過沒有雪的區間,則重量維持不變。

一開始每個雪球的重量都是$0$,且這$Q$天都沒下雪。

你想要知道在第$Q$天結束時每個雪球的重量。

請寫一個程式,給定每個雪球一開始的位置和$Q$天的紀錄,並計算出第$Q$天結束時每個雪球的重量。

第一行有兩個整數$N,Q(1\le N,Q\le 2\cdot 10^5)$。
第二行有$N$個整數,第$i$個整數為$X_i(|X_i|\le 10^{12}, x_i\le x_{i+1}\forall 1\le i\lt N)$。
接下來有$Q$行,第$j$行有一個整數$W_j(|W_j|\le 10^{12})$。

輸出$N$行,第$i$行代表第$i$顆雪球在第$Q$天結束時的重量。

複製範例
4 3
-2 3 5 8
2
-4
7
5
4
2
6
複製範例
1 4
1000000000000
1000000000000
-1000000000000
-1000000000000
-1000000000000
3000000000000
複製範例
10 10
-56 -43 -39 -31 -22 -5 0 12 18 22
-3
0
5
-4
-2
10
-13
-1
9
6
14
8
7
9
11
10
9
8
5
10

第一筆範測說明:

  • 一開始,每個雪球分別在$-2, 3, 5, 8$且重量皆為0。
  • 第一天有個吹向東方強度為$2$的風,在第一天結束時每個雪球分別在$0, 5, 7, 10$且重量為$2, 2, 2, 2$。
  • 第二天有個吹向西方強度為$4$的風,在第二天結束時每個雪球分別在$-4, 1, 3, 6$且重量為$4, 4, 2, 3$。
  • 第三天有個吹向東方強度為$7$的風,在第三天結束時每個雪球分別在$3, 8, 10, 13$且重量為$5, 4, 2, 6$。

所以請輸出分別輸出$5, 4, 2, 6$


原題subtask:

33% $N, Q\le 2000$

67% 無其他限制

sorting

JOI 2021 Final Round pB