CSES - Putka Open 2020 – 2/5 - Torni
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Monellako tavalla voit rakentaa palikoista tornin, jonka leveys on 22 ja korkeus on nn? Käytössäsi on rajattomasti kaiken kokoisia suorakulmaisia palikoita, joissa leveys ja korkeus ovat kokonaislukuja.

Esimerkiksi kun n=6n=6, tässä on joitakin mahdollisia ratkaisuja:

Syöte

Syötteen ensimmäisellä rivillä on kokonaisluku tt: testien määrä.

Tämän jälkeen syötteessä on tt riviä, joista jokaisella on kokonaisluku nn: tornin korkeus.

Tuloste

Ilmoita jokaisesta testistä tornien määrä modulo 109+710^9+7.

Esimerkki

Syöte:

3
2
6
1337

Tuloste:

8
2864
640403945

Osatehtävä 1 (15 pistettä)

  • 1t101 \le t \le 10
  • 1n101 \le n \le 10

Osatehtävä 2 (41 pistettä)

  • 1t1001 \le t \le 100
  • 1n1001 \le n \le 100

Osatehtävä 3 (44 pistettä)

  • 1t1001 \le t \le 100
  • 1n1061 \le n \le 10^6