mere

Time limit: 0.5s Memory limit: 8MB Input: mere.in Output: mere.out

În grădina lui Cosmin se află un măr cu număr nelimitat de mere. Cei NN prieteni ai lui Cosmin, numerotați de la 11 la NN, vor culege mere timp de TT zile, după următoarea regulă:
În dimineața zilei TiT_i, prietenii lui Cosmin vor forma o coadă la intrarea în grădina, începând cu prietenul XiX_i. Așadar, coada va arăta sub forma XiX_i, Xi+1X_{i+1}, ..., XnX_n, X1X_1, ..., Xi1X_{i-1}. În acea zi se vor culege YiY_i mere. Fiecare prieten XiX_i va intra în grădina, va culege un măr și se va întoarce în coadă.
În ziua T+1T + 1, Cosmin alege aleatoriu KK prieteni (Q1..QkQ_1..Q_k) și dorește să afle câte mere a cules fiecare.

Cerinţă

Scrieţi un program care să găsească numărul de mere culese de fiecare dintre cei K prieteni selectați de Cosmin.

Date de intrare

Fişierul de intrare mere.in conţine:
Pe prima linie, N T KN \ T \ K, trei numere întregi reprezentând numărul de prieteni, numărul de zile în care se vor culege mere și numărul de întrebări ale lui Cosmin.
Pe următoarele TT linii, câte două numere întregi, separate printr-un spațiu, Xi YiX_i \ Y_i, reprezentând indicele prietenul ce va intra primul în grădina, respectiv numărul de mere ce vor fi culese în ziua TiT_i.
Pe ultima linie, KK numere întregi, QiQ_i, reprezentând indicii prietenilor lui Cosmin, pentru care se dorește aflarea numărului de mere culese.

Date de ieşire

Fişierul de ieşire mere.out va conţine KK numere întregi, pe o singură linie, separate printr-un spațiu, reprezentând răspunsurile la cele KK întrebări.

Restricţii şi precizări

  • 1XiN10 000 0001 \leq X_i \leq N \leq 10 \ 000 \ 000;
  • 1T200 0001 \leq T \leq 200 \ 000;
  • 1K100 0001 \leq K \leq 100 \ 000;
  • 1Yi1 000 0001 \leq Y_i \leq 1 \ 000 \ 000.
  • Pentru teste în valoare de 3030 puncte: 1XiN1001 \leq X_i \leq N \leq 100, 1T1001 \leq T \leq 100, 1K1001 \leq K \leq 100, 1Yi1 0001 \leq Y_i \leq 1 \ 000;
  • Pentru teste în valoare de 5050 puncte: 1XiN200.0001 \leq X_i \leq N \leq 200.000, 1T10 0001 \leq T \leq 10 \ 000, 1K10 0001 \leq K \leq 10 \ 000;
  • Pentru teste în valoare de 7070 puncte: 1N1 000 0001 \leq N \leq 1 \ 000 \ 000, 1<=T<=100 0001 <= T <= 100 \ 000.

Exemplu

mere.in

5 3 4
1 2
3 5
2 7
2 4 1 2

mere.out

4 2 3 4

Explicație

55 persoane vor culege mere timp de 33 zile, astfel:

  • În prima zi, vor culege 22 mere persoanele cu indicii 11 și 22;
  • În a doua zi, vor culege 55 mere persoanele cu indicii 3,4,5,13, 4, 5, 1 și 22;
  • În a treia zi, vor culege 77 mere persoanele cu indicii 2,3,4,5,1,2,32, 3, 4, 5, 1, 2, 3.

Așadar, numărul de mere culese de fiecare persoană de la 11 la NN este: 13,24,33,42,521 \rightarrow 3, 2 \rightarrow 4, 3 \rightarrow 3, 4 \rightarrow 2, 5 \rightarrow 2.

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