- Time limit: 1.50 s
- Memory limit: 128 MB
Ruudukon koko on k \times k ruutua, ja jokainen ruutu on aluksi valkoinen. Ruutujen (y_1,x_1) ja (y_2,x_2) etäisyys on |y_1-y_2|+|x_1-x_2|.
Tehtäväsi on toteuttaa seuraavat operaatiot:
- muuta ruudun (y,x) väri valkoisesta mustaksi
- laske etäisyys ruudusta (y,x) lähimpään mustaan ruutuun
Syöte
Syötteessä on ensin kaksi kokonaislukua k ja n: ruudukon koko ja operaatioiden määrä.
Tämän jälkeen syötteessä on n riviä, jotka kuvaavat operaatiot. Jokaisella rivillä on kolme lukua t, y ja x.
Jos t=1, on kyseessä tyypin 1 operaatio, joka muuttaa ruudun (y,x) mustaksi. Voit olettaa, että ruutu (y,x) on valkoinen ennen operaatiota.
Jos t=2, on kyseessä tyypin 2 operaatio, jossa täytyy laskea etäisyys ruudusta (y,x) lähimpään mustaan ruutuun.
Ensimmäinen operaatioista on aina tyypin 1 operaatio.
Tuloste
Tulosta jokaisen tyypin 2 operaation vastaus omalle rivilleen.
Rajat
- 1 \le k \le 1000
- 1 \le n \le 10^5
- 1 \le y,x \le k
Esimerkki
Syöte:
4 5 1 2 2 2 2 2 2 4 4 1 3 4 2 4 4
Tuloste:
0 4 1