Počet bodov:
Popis:  12b
Program:  8b

Bol daždivý októbrový deň. Vonku MASÍVNE pršalo. Vladko nemal čo robiť. Len tak sa pozeral von oknom. Po chvíli si všimol, že sa na chodníku vytvorilo viacero oblastí, z kade voda steká na rovnaké miesto. Vladka veľmi zaujíma, ktoré miesta na chodníku patria do akej oblasti. Pomôžete mu to zistiť? Vladko je však veľmi vyberavý. Páči sa mu iba také označenie oblastí, pre ktoré platí: ak máme dve oblasti - \(O_1, O_2\) oblasť na ktorú pri prechode zľava doprava, zhora dole narazíme ako prvú, musí byť označená menším číslom.

Úloha

Chodník je reprezentovaný dvojrozmerným poľom. Voda steká z políčka \(CH[i][j]\) na najnižšieho nižšieho suseda. Ak má viacero susedov rovnakú výšku, priorita stekania ide: S, Z, J, V. Vašou úlohou je zistiť, ktoré políčka patria do rovnakej oblasti. Oblasti číslujeme od 1. Očíslovanie oblastí musí spĺňať Vladkovu podmienku.

Formát vstupu

V prvom riadku vstupu dostanete 2 čísla - \(n, m\) - rozmery chodníka. Ďalej nasleduje \(n\) riadkov po \(m\) čísiel.

V jednotlivých sadách platia nasledujúce obmedzenia:

Sada 1 2 3 4
\(1 \leq n, m \leq\) \(10\) \(100\) \(500\) \(500\)
\(1 \leq \max CH[i][j] \leq\) \(100\) \(4\cdot10^4\) \(2,5\cdot 10^5\) \(10^9\)

Formát výstupu

Vypíšte \(n\) riadkov po \(m\) stĺpcoch. Hodnota \(CH[i][j]\) značí, do ktorej oblasti patrí políčko \(CH[i][j]\).

Príklady

Input:

3 3
1 1 1
1 2 1
1 1 1

Output:

1 2 3
4 2 5
6 7 8

Voda steká z políčka \(CH[1][1]\) na políčko \(CH[0][1]\), pretože spomedzi ostatných susedov \(CH[1][1]\) má najvyššiu prioritu

Input:

2 2
1 1
1 1

Output:

1 2
3 4

Voda nemá kam stekať zo žiadneho políčka. Odpoveď:

2 1  
3 4

by nevyhohovala Vladkovým podmienkam, pretože oblasť 2 by sme stretli pred oblasťou 1.

Odovzdávanie

Na odovzdávanie sa musíš prihlásiť

Otázky a diskusia

Po skončení kola budete mať príležitosť na diskutovanie o riešeniach v diskusii pod vzorovým riešením.