Zadanie
Isto si tento nadpis nikto neprečíta
Počet bodov: 55
Prihláste sa do Fakt Kolosálnej Show! Ak zodpoviete všetky zákerné otázky, zvládnete zdolať ninja prekážkovú dráhu, porazíte ostatných účastníkov v battle royale, a dosiahnete vrch Tomiho zámku, vyhráte úžasné ceny! Je až N spôsobov ako si z nich vybrať!
, čítaš reklamu ktorá ti vyskočila na stránke o funkcionálnom programovaní.
\(N\) spôsobov ako si vybrať ceny? To je síce pekné, ale nehovorí to nič moc ani z koľkých cien je na výber, ani koľko ich nakoniec odnesieš domov.
Ak je napríklad možností 6, tak to si môžeš buď vybrať 2 ceny zo 4, alebo jednu zo 6, alebo 5 zo 6.
Aby si vedel objektívne prehodnotiť či sa do FKS prihlásiš, potrebuješ vedieť aké dvojice \(n,k\) existujú také, že z \(n\) cien si vieš vybrať \(k\) \(N\) spôsobomi (nezáležiac na poradí).
Vstup a výstup
V prvom riadku je číslo \(T\) - počet testov (to sú rôzne ročníky FKS). V každom z ďalších \(T\) riadkov je jedno číslo \(N\).
Pre každé \(N\) vypíšte v prvom riadku počet dvojíc \(n,k\) pre ktoré \(n\) nad \(k\) je rovné \(N\).
V druhom riadku vypíšte všetky tieto dvojice, zoradené podľa \(n\), pri rovnosti podľa \(k\). Pozrite si príklady na formátovanie.
Platí \(1 \leq T \leq 1\,000\).
V prvej sade \(2 \leq N \leq 1\,000\).
V druhej sade \(2 \leq N \leq 20\,000\).
V tretej sade \(2 \leq N \leq 10^{15}\).
Príklad
Input:
3
6
21
560
Output:
3
4C2, 6C1, 6C5
4
7C2, 7C5, 21C1, 21C20
4
16C3, 16C13, 560C1, 560C559
Pre odovzdávanie sa musíš prihlásiť.