Hide

Problem A
Ristkülik

Languages de en et is lt sv

Irusel oli ristkülik. Ta lõikas selle kaheks ja sai kaks ristkülikut. Ta pani ühe neist kõrvale ja lõikas teise uuesti kaheks. Ta jätkas ristkülikute lõikamist samal viisil (kordagi lõikamata juba kõrvale pandud ristkülikuid) kuni ta sai kokku $K$ ristkülikut. Kõigi ristkülikute küljepikkused on täisarvud.

Seejärel järjestas ta ristkülikud nende pikemate külgede pikkuste järgi ja pani tähele, et need pikkused on kõik erinevad (samas ristkülikute lühemate külgede pikkused ei tarvitse erinevad olla).

Ülesanne

Irus ei mälete algse ristküliku küljepikkusi. Aita tal need meelde tuletada.

Sisend

Esimesel real on ristkülikute arv $K$.

Järgnevad $K$ rida, millest igaühes on kaks naturaalarvu $a_ i$ ja $b_ i$ – ühe ristküliku küljepikkused. Need arvud on järjestatud nii, et $a_ i \geqslant b_ i$ ja $a_1 < \cdots < a_ K$.

Väljund

Esimesele reale väljastada $P$ - esialgse ristküliku võimalike erinevate mõõtude koguarv.

Järgmisele $P$ reale väljastada kõik võimalikud esialgse ristküliku lühema külje pikkused, järjestatuna vähimast suurimani (pane tähele, et me loeme ristküliku iga suurust ühekordselt, ka siis, kui selle võiks antud $K$ ristkülikuks lahti lõigata mitmel erineval viisil).

Sisendi piirangud

  • $2 \leq K \leq 100\, 000$

  • $1 \leq b\_ i \leq a\_ i < a\_ {i+1} \le 5\, 000\, 000$ (iga $1 \leq i \leq K$ korral).

Alamülesanded

Nr.

Punktid

Lisapiirangud

1

25

$K \leq 10$.

2

20

Kõik $b_ i = 1$.

3

55

Lisapiirangud puuduvad.

Näited

Esialgse ristküliku mõõdud võisid olla kas $2 \times 8$ või $4 \times 4$.

Sample Input 1 Sample Output 1
3
2 1
3 2
4 2
2
2
4

Please log in to submit a solution to this problem

Log in