[BOJ 7185] IP-aadressid

View as PDF

Submit solution

Points: 2
Time limit: 1.0s
Memory limit: 1G

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

Matil on veebileht ning ta tahab täpselt teada, kes tema lehte külastavad. Külastajate jälgimiseks koostas Mati skripti, mis töötab järgmiselt:</p>

  • kõigi seni nähtud külastajate IP-aadresse hoitakse tekstifailis;
  • iga uue päringu (külastaja) saabumisel kontrollitakse programmi grep abil IP-aadressi esinemist tekstifailis (grep uusIP fail);
  • kui vastavusi ei leitud, lisatakse uus aadress faili lõppu ja saadetakse Matile teavitus;
  • muudel juhtudel ei tehta midagi.

IP-aadress on sõne, mis koosneb neljast täisarvust vahemikus $0 \ldots 255$ ning punktidest nende vahel.

Programm grep on levinud töövahend regulaaravaldistega kirjeldatud mustrite otsimiseks teksti-failidest. Antud juhul kasutab Mati programmi grep valesti, sest:

  • grep otsib alamsõnesid: otsitav muster ei pea algama tingimata rea alguses ega lõppema rea lõpus;
  • otsitavat mustrit tõlgendatakse regulaaravaldisena ning seetõttu võib otsitava IP-aadressi punktile vastata tekstifailis suvaline sümbol (kuid mitte vastupidi).

On antud kõigi Mati skripti poolt töödeldud IP-aadresside loetelu (töötlemise järjekorras). Tuvastada, millised aadressid jättis Mati skript ekslikult faili lisamata.

입력 형식

Tekstifaili esimesel real on üks täisarv: IP-aadresside arv $N$ ($1 \le N \le 1\,000\,000$). Järgmisel $N$ real on igaühel üks IP-aadress. Sisendis võib esineda korduvaid aadresse, erinevate aadresside koguarv üheski testis ei ole suurem kui $2\,000$.

출력 형식

Tekstifaili esimesele reale väljastada lisamata jäänud aadresside arv $V$ ning järgmisele $V$ reale lisamata jäänud aadressid nende esimist korda sisendfailis esinemise järjekorras.

예제 입력

5
112.112.112.112
3.4.5.6
2.112.112.1
2.1.2.1
1.2.1.2

예제 출력

3
2.112.112.1
2.1.2.1
1.2.1.2

Comments

There are no comments at the moment.