simulare

Time limit: 0.1s Memory limit: 64MB Input: Output:

Cerință

Se dă o matrice mm cu NN linii și MM coloane care conține valori. Se dă și un șir de QQ direcții (nord, vest, sud, est). Plecând de la un punct (x0,y0)(x_0, y_0) și urmând toate direcțille date, pe rând, se va forma un drum (x1,y1),(x2,y2),,(xQ,yQ)(x_1, y_1), (x_2, y_2), \dots, (x_Q, y_Q). Pentru fiecare ii (1iQ1 \leq i \leq Q) să se afișeze mx1,y1+mx2,y2++mxi,yim_{x_1, y_1} + m_{x_2, y_2} + \dots + m_{x_i, y_i}.

Date de intrare

Pe prima linie se găsesc cinci numere întregi, NN, MM, QQ, x0x_0 și y0y_0. Pe următoarele NN linii, se găsesc câte MM numere întregi, reprezentând valorile din matrice. Pe următoarea linie, se găsesc QQ carcatere, care pot fi N, E, S sau V, reprezentând direcțiile pe baza cărora se construiește drumul.

Din cauza mărimii datelor de intrare, vă recomandăm să adăugați aceste linii la începutul funcției main():

ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);

Date de ieșire

Pe prima linie se vor găsi QQ numere, reprezentând sumele cerute.

Restricții și precizări

  • 1N,M1 0001 \leq N, M \leq 1 \ 000
  • 1Q100 0001 \leq Q \leq 100 \ 000
  • 1mi,j1 000 000 0001 \leq m_{i, j} \leq 1 \ 000 \ 000 \ 000, unde 1iN1 \leq i \leq N și 1jM1 \leq j \leq M
  • Se garantează că 1xiN1 \leq x_i \leq N și 1yiM1 \leq y_i \leq M, unde 0iQ0 \leq i \leq Q.

Exemplu

stdin

3 4 8 2 3
1 2 3 4
5 6 7 8
9 10 11 12
SENVVNES

stdout

11 23 31 38 44 46 49 56

Explicație

m3,3=11m_{3, 3} = 11
11+m3,4=2311 + m_{3, 4} = 23
23+m2,4=3123 + m_{2, 4} = 31
31+m2,3=3831 + m_{2, 3} = 38
38+m2,2=4438 + m_{2, 2} = 44
44+m1,2=4644 + m_{1, 2} = 46
46+m1,3=4946 + m_{1, 3} = 49
49+m2,3=5649 + m_{2, 3} = 56

Log in or sign up to be able to send submissions!