Compania ONIx comercializează produse. Pentru a creşte vânzările, compania a pus la dispoziţia clienţilor oferte promoţionale. Fiecare ofertă constă din exact produse diferite, care sunt vândute împreună la un preţ mai scăzut decât dacă ar fi vândute separat (de exemplu, suc şi apă minerală). Produsele sunt identificate prin numere de la la , iar ofertele promoţionale prin numere de la la . Deoarece şi-au schimbat de curând aplicaţia software ce gestionează baza de date a companiei, angajaţii nu s-au obişnuit cu noul sistem şi, din neatenţie, unul dintre aceştia a şters toate informaţiile despre produsele şi ofertele existente. Singurele informaţii rămase sunt cele ale departamentului de statistică, care foloseşte o bază de date proprie. Aceste informaţii sunt reprezentate de numărul de oferte şi de toate cele perechi de oferte ce au un produs în comun (în mod evident, oricare oferte pot avea cel mult un produs în comun).
Cerinţă
Folosind informaţiile departamentului de statistică, determinaţi numărul de produse şi cele produse din cadrul fiecărei oferte.
Date de intrare
Prima linie a fişierului de intrare promo.in
conţine numerele întregi şi , separate printr-un spaţiu. Următoarele linii conţin câte numere întregi şi , separate printr-un spatiu, având semnificaţia că oferta cu numărul şi cea cu numărul au un produs în comun.
Date de ieşire
Pe prima linie a fişierului de ieşire promo.out
veţi afişa numărul întreg , reprezentând numărul de produse. Următoarele linii trebuie să conţină câte numere întregi, separate printr-un spaţiu. A -a linie dintre aceste linii va conţine numerele produselor din care este formată a -a ofertă.
Restricţii si precizări
- Numărul de produse determinat trebuie să fie cel mult egal cu .
- Se garantează existenţa cel puţin a unei soluţii. Dacă există mai multe soluţii, puteţi afişa oricare dintre ele.
Exemplu
promo.in
11 7
1 4
4 7
7 1
2 5
5 8
8 2
10 11
promo.out
17
1 2
3 4
5 6
1 7
3 8
9 10
1 11
3 12
13 14
15 16
15 17