Metroovõrgu tsoonid | 프로그래밍의 벗 PivotOJ
PivotOJ

Metroovõrgu tsoonid

시간 제한: 1000ms메모리 제한: 1024MB출처: EIO 2022-23 prelimBOJ 29834

문제

Mõõdukalt Tähelepanuväärses Linnas on suur metroovõrk. Metroovõrk koosneb NN jaamast, mis on nummerdatud 1,,N1, \ldots, N, ning MM neid ühendavast raudteelõigust. On teada, et ükski raudteelõik ei ühenda jaama iseendaga, et ükski raudteelõikude paar ei ühenda sama jaamapaari ja et mööda neid raudteelõike on võimalik sõita igast jaamast igasse teise jaama. Iga jaama kohta on teada tema asukoht (x;y)(x; y) koordinaattasandil, kus linna keskpunkt asub punktis (0;0)(0; 0). Et metroojaamad asuvad maa all, võib ka juhtuda, et linnas on mitu samade koordinaatidega metroojaama, erinevatel sügavustel.

Suurtes linnades on tavaks jaotada metroovõrk tsoonideks. Sama plaan on käiku minemas ka Mõõdukalt Tähelepanuväärses Linnas. Lihtsuse mõttes otsustati jaamad jaotada tsoonidesse selle järgi, kui kaugel on nad linna keskpunktist.

Selleks joonistab planeerija linnakaardile k1k - 1 ringjoont, kõik keskpunktiga (0;0)(0; 0) ja iga järgmine eelmisest suurema raadiusega. Siis:

  • 1. tsoon koosneb jaamadest, mis jäävad 1. ringjoone sisse.
  • 2. tsoon koosneb jaamadest, mis jäävad 1. ringjoone peale või 1. ja 2. ringjoone vahele.
  • 3. tsoon koosneb jaamadest, mis jäävad 2. ringjoone peale või 2. ja 3. ringjoone vahele.
  • \ldots
  • kk. tsoon koosneb jaamadest, mis jäävad (k1)(k-1). ringjoone peale või sellest väljapoole.

Sinu ülesanne on planeerijat aidata. Tsoonisüsteemi heaks toimimiseks on veel mõned nõuded:

  • Igas tsoonis peab olema vähemalt üks jaam.
  • Igast aa. tsooni jaamast peab olema võimalik liikuda mistahes bb. tsooni jaama nii, et ei läbita ühtki jaama, mille tsooni number on suurem kui max(a,b)\max(a, b).
  • Tsoonide arv peab olema maksimaalne, mille juures on veel võimalik mõlemad eelmised nõuded rahuldada.

Joonisel 1 on näitena toodud üks võimalik metroovõrgustik ja tingimustele vastav tsoonideks jaotus. Esimesse tsooni kuuluvad jaamad 1, 2 ja 3; teise tsooni kuuluvad jaamad 5, 6 ja 7 ning kolmandasse tsooni ainult jaam 4. On selge, et igas tsoonis on vähemalt üks jaam.

Samuti kehtib teine nõue. Vaatame näiteks jaamu 1 ja 6, mis asuvad vastavalt 1. ja 2. tsoonis. Näeme, et jaamast 1 on võimalik liikuda jaama 6 kasutades ainult 1. ja 2. tsooni jaamu, näiteks 1561 \to 5 \to 6 või 12361 \to 2 \to 3 \to 6. Samuti on näiteks jaamast 1 võimalik liikuda jaama 3, läbides ainult 1. tsooni jaamu: 1231 \to 2 \to 3.

Saab näidata, et 3 on antud metroovõrgu korral suurim võimalik tsoonide arv.

입력

Sisendi esimesel real on kaks täisarvu NN (2N31052 \le N \le 3 \cdot 10^5) ja MM (1M31051 \le M \le 3 \cdot 10^5).

Neile järgnevad NN rida, mis kirjeldavad jaamade asukohti. Nendest ii-s rida koosneb kahest täisarvust xix_i ja yiy_i (109xi,yi109-10^9 \le x_i, y_i \le 10^9), mis tähendavad, et jaam ii asub punktis (xi;yi)(x_i; y_i).

Neile järgnevad MM rida, mis kirjeldavad jaamade vahelisi raudteelõike. Nendest jj-s rida koosneb kahest täisarvust uu ja vv (1u,vN1 \le u, v \le N, uvu \ne v), mis tähendavad, et jaamad uu ja vv on omavahel raudteelõiguga ühendatud.

출력

Väljundi esimesele reale väljastada KK --- suurim võimalik tsoonide arv.

Teisele reale väljastada K1K - 1 täisarvu D1,D2,,DK1D_1, D_2, \ldots, D_{K - 1} (0<D1<D2<<DK1210180 < D_1 < D_2 < \cdots < D_{K - 1} \le 2 \cdot 10^{18}), mis näitavad, et:

  • tsoon number 1 koosneb jaamadest, mille kaugus keskpunktist on intervallis [0,D1)\left[0, \sqrt{D_1}\right);
  • tsoon number ii (1<i<K1 < i < K) koosneb jaamadest, mille kaugus keskpunktist on intervallis [Di1,Di)\left[\sqrt{D_{i - 1}}, \sqrt{D_i}\right);
  • tsoon number KK koosneb jaamadest, mille kaugus keskpunktist on intervallis [DK1,)\left[\sqrt{D_{K - 1}}, \infty\right).

Kui suurim võimalik tsoonide arv K=1K = 1, siis peab teine rida olema tühi.

Kui tsoonideks jaotamiseks on mitu võimalust, väljastada ükskõik milline neist.

예제

예제 1

입력
7 8
-1 0
2 2
1 0
-6 2
-4 -3
-3 -4
0 -5
1 2
2 3
1 5
1 7
3 6
4 5
5 6
6 7
출력
3
12 30

예제 2

입력
4 4
2 2
-2 -2
3 -3
-3 3
1 3
3 2
1 4
4 2
출력
1
이 문제는 채점 준비 중입니다. 테스트 데이터가 확보되면 제출이 가능합니다.