heatmaps
Considera una stanza rettangolare, sul cui soffitto abbiamo una termocamera rivolta verso il basso. Nella stanza ci sono un certo numero di fonti di calore di intensità 1-9
, essendo la temperatura di fondo 0
. Il calore si dissipa da ogni fonte, scendendo di un'unità per passo (non diagonale). Ad esempio, la 20x10
stanza
...........1........
....................
...8................
..5...............2.
....................
.1..................
................1...
.................65.
....................
............2.......
contiene 9 fonti di calore e il gradiente di temperatura mostrato dalla termocamera è
34565432100100000000
45676543210000000000
56787654321000000110
45676543210000001221
34565432100000012321
23454321000000123432
12343210000001234543
01232100000012345654
00121000000011234543
00010000000121123432
In forma grafica questo potrebbe apparire come:
Dal gradiente, possiamo dedurre le posizioni e le intensità di alcune fonti di calore, ma non tutte. Ad esempio, tutti gli 9
s possono sempre essere dedotti, poiché hanno la temperatura massima, e anche 8
in questo caso, poiché produce un massimo locale nel gradiente. Si 2
può anche dedurre il confine vicino alla destra, anche se non è al massimo locale, poiché non ne ha un altro 2
come vicino. Le 5
s, d'altra parte, non sono dedotte, poiché il loro calore potrebbe anche essere prodotto dalle fonti più intense vicino a loro. È 0
noto che le s non contengono fonti di calore, ma tutte le altre tessere possono potenzialmente contenerne una. Indichiamo le piastrelle incerte di trattini-
, determinate fonti di calore in base alle cifre corrispondenti e determinati spazi vuoti per periodi .
:
---------..1........
----------..........
---8-------......--.
----------......--2-
---------......-----
--------......------
-------......-------
.-----......-----6--
..---.......--------
...-.......-2-------
Il tuo compito sarà quello di produrre questo schema inferito dal gradiente di temperatura.
Regole
|
Viene fornito l'input come stringa delimitata da newline o pipe verticali , a seconda di quale sia più conveniente e l'output deve avere la stessa forma. Potrebbe esserci un delimitatore finale nell'input e / o output, ma nessuno precedente. La dimensione dell'input può variare, ma la sua larghezza e altezza sono sempre almeno 4
. Sono accettabili sia funzioni che programmi completi. Vince il conteggio di byte più basso e sono vietate le scappatoie standard.
Casi di prova aggiuntivi
Ingresso:
898778765432100
787667654321100
677656543211210
678765432112321
567654321123210
che assomiglia a questo in forma grafica:
Produzione:
-9---8-------..
-------------..
--------------.
--8---------3--
-----------3--.
Ingresso:
7898
8787
7676
6565
Produzione:
--9-
8---
----
----
Ingresso:
00001
00000
00000
10000
Produzione:
....1
.....
.....
1....