CSES - Hotelli
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Hotelliin on tulossa lähiaikoina nn asiakasta, joista jokainen majoittuu yhdessä huoneessa.

Tiedät jokaisen asiakkaan tulo- ja lähtöpäivän. Kaksi asiakasta voi majoittua samassa huoneessa, kunhan ensimmäisen asiakkaan lähtöpäivä on aiemmin kuin toisen asiakkaan tulopäivä.

Mikä on pienin määrä huoneita, joka riittää kaikkien asiakkaiden majoittamiseen? Entä miten huoneet voi jakaa käytännössä?

Syöte

Syötteen ensimmäisellä rivillä on yksi kokonaisluku nn: asiakkaiden määrä.

Sitten syötteessä on nn riviä, joista jokainen kuvaa yhden asiakkaan. Kullakin rivillä on kaksi kokonaislukua aa ja bb: asiakkaan tulo- ja lähtöpäivä.

Tuloste

Tulosta ensin yksi kokonaisluku kk: pienin tarvittavien huoneiden määrä.

Tulosta sitten rivi, jossa on jokaisen asiakkaan huoneen numero samassa järjestyksessä kuin syötteessä. Huoneet on numeroitu 1,2,,k1,2,\ldots,k.

Rajat

  • 1n1051 \le n \le 10^5
  • 1ab1091 \le a \le b \le 10^9

Esimerkki

Syöte:

3
1 2
2 4
4 4

Tuloste:

2
1 2 1