Cerință
Alec Sdima pregătește o problemă pentru Stelele Informaticii. El dorește să construiască o permutare care să aibă un număr foarte specific de subșiruri crescătoare de lungime maximă.
O permutare de lungime este o secvență în care fiecare număr de la la apare exact o singură dată.
Un subșir al lui este o secvență , unde .
Un subșir este crescător dacă . Un cel mai lung subșir crescător (LIS) este un subșir crescător de lungime maximă.
Alec alege un număr . Trebuie să determini o permutare care să aibă exact cele mai lungi subșiruri crescătoare distincte. Două cele mai lungi subșiruri crescătoare sunt considerate distincte dacă folosesc mulțimi diferite de indici. Lungimea permutării determinate trebuie să fie de cel mult
.
Date de intrare
Prima linie conține , numărul de test case-uri.
Următoarele linii conțin câte un număr , reprezentând numărul necesar de cele mai lungi subșiruri crescătoare.
Date de ieșire
Pentru fiecare test case, afișați două linii.
Prima linie trebuie să conțină , lungimea permutării determinate.
A doua linie trebuie să conțină o permutare a numerelor de la la .
Exemplu
Date de intrare
3
1
4
6
Date de ieșire
1
1
4
2 1 4 3
5
2 1 5 4 3
Pentru al treilea test case, să considerăm permutarea .
Cele 6 cele mai lungi subșiruri crescătoare sunt:
Restricții și precizări
| Subtask | Scor | Restricții |
|---|---|---|
| 1 | 10 | este o putere a lui |
| 2 | 30 | |
| 3 | 60 |
Dacă secvența afișată nu are exact cele mai lungi subșiruri crescătoare sau dacă lungimea secvenței depășește , punctajul obținut pentru testul respectiv va fi .
Subtask 1 (10 puncte)
Vei primi 10 puncte dacă lungimea secvenței tale este de cel mult , respectiv puncte în caz contrar.
Subtask 2 (30 de puncte)
Fie lungimea secvenței determinate de tine.
Dacă , vei primi punctajul maxim. În caz contrar, punctajul obținut pentru acest subtask este determinat de următoarea formulă:
Subtask 3 (60 de puncte)
Fie lungimea secvenței determinate de tine și fie
Dacă , vei primi punctajul maxim. În caz contrar, punctajul obținut pentru acest subtask este determinat de următoarea formulă: