"A da palma cu ursul"
Andrei a rezolvat problema excursie și după s-a gândit să meargă în excursie în pădure. Când s-a întors, la ieșirea din pădure era un urs. Ursul i-a pus T întrebări de forma: „Îți dau un număr natural N. Spune cât este CN0⋅(N+0)+CN1⋅(N+1)+CN2⋅(N+2)+⋯+CNN⋅(N+N).” Prin CNK am notat combinări de N luate câte K.
Andrei nu știe să rezolve problema, așa că te roagă pe tine să o rezolvi.
Cerință
Pentru fiecare număr N dintre cele T date de urs, tu trebuie să spui cât este CN0⋅(N+0)+CN1⋅(N+1)+CN2⋅(N+2)+⋯+CNN⋅(N+N), mai formal ∑i=0NCNi⋅(N+i). Deoarece aceste numere pot fi foarte mari, va trebui să le afișezi modulo 998 244 353.
Date de intrare
Pe prima linie se va afla numărul T. Apoi, pentru i de la 1 la T, pe linia i+1, se va afla un număr N, reprezentând numărul dat de urs pentru a i-a întrebare.
Date de ieșire
Pe linia i se va afla un singur număr reprezentând răspunsul la întrebarea i a ursului, modulo 998 244 353.
Restricții și precizări
- 1≤T≤10
- 1≤N≤1018
# |
Punctaj |
Restricții |
0 |
0 |
Exemplul |
1 |
5 |
N≤100 |
2 |
12 |
N≤2⋅103 |
3 |
16 |
N≤2⋅106 |
4 |
22 |
N≤107 |
5 |
45 |
Fără restricții suplimentare |
Exemplul
stdin
4
2
6
2344
5459875
stdout
12
576
47421958
201586235
Explicație
Pentru primul test, C20⋅(2+0)+C21⋅(2+1)+C22⋅(2+2)= 1⋅2+2⋅3+1⋅4=2+6+4=12, iar 12 mod 998 244 353=12, deci răspunsul este 12.
Pentru al doilea test, C60⋅(6+0)+C61⋅(6+1)+C62⋅(6+2) +C63⋅(6+3)+C64⋅(6+4)+C65⋅(6+5) +C66⋅(6+6)=1⋅6+6⋅7 +15⋅8+20⋅9+15⋅10+6⋅11 +1⋅12=6+42+120+180+150+66+12=576, iar 576 mod 998 244 353=576, deci răspunsul este 576.