ashima

Time limit: 0.5s Memory limit: 256MB Input: ashima.in Output: ashima.out

Se dă un șir AA, ale cărui elemente sunt definite prin relația AiA_i = iK2ii^K \cdot 2^i pentru orice 1i1 \leq i, unde KK este un număr natural dat. Elementele acestui șir se așează într-o matrice MM, formată din LL linii și CC coloane, astfel: M11=A1M_{11} = A_1, M21=A2M_{21} = A_2, M12=A3M_{12} = A_3, M31=A4M_{31} = A_4, M22=A5M_{22} = A_5, M13=A6M_{13} = A_6, M41=A7M_{41} = A_7, M32=A8M_{32} = A_8 ..., adică parcurgând matricea pe diagonale din stânga-jos spre dreapta-sus.

De exemplu, pentru K=0K=0, L=3L=3 și C=4C=4, șirul AA este format din elementele 2,4,8,16,32,64...2, 4, 8, 16, 32, 64..., iar matricea MM va fi completată astfel:

Cerință

Ashima vă cere să răspundeți la QQ cerințe de forma:

  • l1 l2 c1 c2l_1 \ l_2 \ c_1 \ c_2 : care este suma elementelor MijM_{ij} din matricea MM astfel încât l1il2l_1 \leq i \leq l_2 și c1jc2c_1 \leq j \leq c_2?

Date de intrare

Pe prima linie a fișierului de intrare se află numerele KK, LL, CC și QQ, iar pe următoarele QQ linii se află câte patru numere l1 l2 c1 c2l_1 \ l_2 \ c_1 \ c_2.

Date de ieșire

În fișierul de ieșire se vor afișa QQ linii. Pe linia ii se va afișa rezultatul celei de a ii-a cerințe, modulo 1 000 000 0071 \ 000 \ 000 \ 007.

Restricții

  • 0K30 \leq K \leq 3
  • 1L,C100 0001 \leq L,C \leq 100 \ 000
  • 1Q2001 \leq Q \leq 200
  • 1l1l2L1 \leq l_1 \leq l_2 \leq L
  • 1c1c2C1 \leq c_1 \leq c_2 \leq C
  • 0l2l1,c2c11 0000 \leq l_2 - l_1, c_2 - c_1 \leq 1 \ 000
# Punctaj Restricții
1 16 1L,C1001 \leq L,C \leq 100
2 21 1L,C1 0001 \leq L,C \leq 1 \ 000
3 27 K=0K=0
4 15 K=1K=1
5 12 K=2K=2
6 9 K=3K=3

Exemplul 1

ashima.in

0 3 4 3
1 1 2 4
1 2 1 3
1 3 2 3

ashima.out

584
366
1512

Explicație

Pentru acest exemplu matricea MM se completează ca în exemplul dat în enunț.

  • La prima cerință trebuie calculată suma elementelor aflate între liniile 11 și 11 și coloanele 22 și 44. Suma acestor elemente este 8+64+512=5848 + 64 + 512 = 584.
  • La a doua cerință trebuie calculată suma elementelor aflate între liniile 11 și 22 și coloanele 11 și 33. Suma acestor elemente este 2+8+64+4+32+256=3662 + 8 + 64 + 4 + 32 + 256 = 366.
  • La a treia cerință trebuie calculată suma elementelor aflate între liniile 11 și 33 și coloanele 22 și 33. Suma acestor elemente este 8+64+32+256+128+1024=15128 + 64 + 32 + 256 + 128 + 1024 = 1512.

Exemplul 2

ashima.in

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

ashima.out

1080
642

Explicație

Pentru acest exemplu avem K=1K = 1, deci șirul AA are elementele 1211 \cdot 2^1, 2222 \cdot 2^2, 3233 \cdot 2^3, ..., 1021010 \cdot 2^{10}, iar matricea MM, cu 22 linii și 55 coloane se completează astfel:

  • La prima cerință trebuie calculată suma elementelor aflate între liniile 11 și 11 și coloanele 22 și 44. Suma acestor elemente este 24+160+896=108024 + 160 + 896 = 1080.
  • La a doua cerință trebuie calculată suma elementelor aflate între liniile 11 și 22 și coloanele 11 și 33. Suma acestor elemente este 2+24+160+8+64+384=6422 + 24 + 160 + 8 + 64 + 384 = 642.


Dacă ați reușit să răspundeți la cerințe, șirul A shi\textbf{A shi} matricea Ma\textbf{Ma} vă mulțumesc pentru ajutor!

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