UPDATEIT - Update the array !


You have an array containing n elements initially all 0. You need to do a number of update operations on it. In each update you specify l, r and val which are the starting index, ending index and value to be added. After each update, you add the 'val' to all elements from index l to r. After 'u' updates are over, there will be q queries each containing an index for which you have to print the element at that index.

Input

First line consists of t, the number of test cases. (1 <= t <= 10)

Each test case consists of "n u",number of elements in the array and the number of update operations, in the first line (1 <= n <= 10000 and 1 <= u <= 100000)

Then follow u lines each of the format "l r val" (0 <= l,r < n, 0 <= val <=10000)

Next line contains q, the number of queries. (1 <= q <= 10000)

Next q lines contain an index (0 <= index < n)

Output

For each test case, output the answers to the corresponding queries in separate lines.

Example

Input:
1
5 3
0 1 7
2 4 6
1 3 2
3
0
3
4

Output:
7
8
6

hide comments
aditya9125: 2017-09-10 12:43:11

Segment tree + lazy propagation would do.

rin1604: 2017-08-28 11:36:24

AC by ST + lazy

prasoonbatham: 2017-08-23 16:49:13

O(1) query simple array modification

rohit9934: 2017-08-16 13:15:36

Can be done with BIT and range updates.
Thanks kartik sir for the tutorial.

singlasahil221: 2017-07-23 08:07:45

BRUTE FORCE +OPTIMIZATION==AC

Last edit: 2017-07-23 08:07:57
rakcode1998: 2017-06-17 21:11:40

Solved it by segment tree + lazy propagation

cj23897: 2017-06-16 12:39:26

Solved with both prefix sum and BIT

sandeep_4141: 2017-06-09 10:57:16

Prefix sum !! geeksforgeek helped me :)
learn something new :)

prabodh prakash: 2017-05-14 15:19:14

Good question. Recommended to solve w/o use of any trees etc.

sas1905: 2017-05-10 08:15:20

No need of BIT..!! Simple O(1) query processing can be done..!!


Added by:Pandian
Date:2013-10-15
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:Own