Sono un grande fan del gioco Creeper World, e in particolare del sequel. Non è necessario sapere come funziona questo gioco per rispondere alla domanda, volevo solo menzionare l'origine della mia domanda.
Nel gioco, il tuo obiettivo è quello di distruggere gli Emettitori che generano Creeper, usando un'arma nota come nullificatore.
I nullifieri possono distruggere qualsiasi emettitore in questo raggio:
eee
eeeee
eenee
eeeee
eee
Ogni nullificatore può indirizzare più emettitori.
Il tuo obiettivo
Dato un array che simula una mappa 2D composta da nulla ed emettitori con qualunque carattere ti piaccia, potrebbero essere spazi ed e o numeri - assicurati solo che siano distinguibili, emetti la stessa mappa con la quantità ottimale di nullifiers n (o cosa vorresti ), in modo che gli emettitori vengano distrutti con il minor numero di nullifiers.
Se ci sono diversi modi ottimali per farlo, solo uscirne uno andrebbe bene. Se, tuttavia, l'attività non è risolvibile, supponiamo che ci siano così tanti emettitori che nessun layout potrà mai colpirli tutti, è necessario produrre qualcosa di decisamente diverso, nulla sarà sufficiente
Regole rapide:
- Input: matrice multidimensionale
- L'input conterrà due caratteri, che significa nulla ed emettitore , includendo ciò che è che cosa nella tua risposta
- Output: matrice multidimensionale
- L'output conterrà tre caratteri, che significa nulla , emettitore e nullificatore O un output distinguibile se l'input è irrisolvibile
- Puoi sostituire il carattere Nothing solo con un annullatore
- Un nullificatore può colpire più emettitori e colpirà sempre tutti quelli che si trovano nel raggio d'azione
- Un nullificatore può colpire nell'area sopra specificata e colpirà sempre tutti gli emettitori che può colpire
- Le risposte più brevi in byte vincono
- scappatoie standard vietate
Esempi
Ingresso:
[[ , ,e, , ],
[ , , , , ],
[e, , , ,e],
[ , , , , ],
[ , ,e, , ]]
Produzione:
[[ , ,e, , ],
[ , , , , ],
[e, ,n, ,e],
[ , , , , ],
[ , ,e, , ]]
Ingresso:
[[e,e,e,e,e],
[e, , , ,e],
[e, , , ,e],
[e, , , ,e],
[e,e,e,e,e]]
Produzione:
[[e,e,e,e,e],
[e, ,n, ,e],
[e, , , ,e],
[e, ,n, ,e],
[e,e,e,e,e]]
Ingresso:
[[e, , , , , , ,e, ,e, , , ,e, ,e, ,e, ,e],
[ , ,e, , ,e, , , ,e,e, , , , ,e, , , , ],
[ , ,e, , , ,e, ,e, ,e, ,e, ,e, ,e, , , ],
[e, , , ,e, ,e, , , , , , , , , , , ,e, ],
[e, , ,e, , , , , ,e, ,e, ,e, ,e, , , ,e],
[ , , ,e, ,e, ,e, , , , , , , , , ,e, , ],
[ ,e,e, ,e, , , ,e, ,e,e, ,e, ,e, ,e, , ],
[ , ,e, , , ,e, , , , , , , , ,e,e, ,e, ],
[ , , ,e, , , , ,e,e, , , , , , , , ,e, ],
[e, , , , , , ,e, , , ,e,e, ,e, , , , , ],
[ ,e,e, , ,e, , , , ,e, , , , , , ,e, , ],
[ , , ,e,e, ,e, ,e, , , ,e,e, ,e, ,e, ,e],
[e,e, , , , ,e, , , ,e, , , , , , , , , ],
[ , , ,e, , , , , ,e, , ,e, ,e, ,e, ,e, ],
[ , , , ,e, ,e, , , , , , , , , , , , , ],
[e,e, , ,e,e, , ,e, , ,e, ,e, ,e, ,e, ,e],
[e, ,e, ,e, , ,e,e,e, , ,e, , , ,e, , ,e],
[ , , , ,e, , , , , ,e, , , ,e, , , , , ],
[ , ,e, , , ,e, ,e, , , ,e, , , , ,e, , ],
[ , , ,e, ,e, ,e, , ,e,e, , ,e,e, , ,e, ]]
Output (questo output è fatto a mano e potrebbe non essere l'output ottimale):
[[e, , , , , , ,e, ,e, , , ,e, ,e, ,e, ,e],
[ , ,e, , ,e, , ,n,e,e, , , ,n,e, , , , ],
[ ,n,e, , ,n,e, ,e, ,e, ,e, ,e, ,e, ,n, ],
[e, , , ,e, ,e, , , , , , , , , , , ,e, ],
[e, , ,e, , , , , ,e, ,e, ,e, ,e, , , ,e],
[ , ,n,e, ,e, ,e, , , ,n, , , , , ,e, , ],
[ ,e,e, ,e, ,n, ,e, ,e,e, ,e, ,e,n,e, , ],
[ , ,e, , , ,e, , , , , , , , ,e,e, ,e, ],
[ , , ,e, , , , ,e,e, , , , , , , , ,e, ],
[e, ,n, , , , ,e, , , ,e,e, ,e, , , , , ],
[ ,e,e, , ,e,n, , ,n,e, , , ,n, , ,e,e, ],
[ , , ,e,e, ,e, ,e, , , ,e,e, ,e, ,e, ,e],
[e,e, , , , ,e, , , ,e, , , , , , , , , ],
[ , , ,e, ,n, , , ,e, , ,e, ,e, ,e, ,e, ],
[ ,n, , ,e, ,e, , , , , , , ,n, , , ,n, ],
[e,e, , ,e,e, , ,e,n, ,e, ,e, ,e, ,e, ,e],
[e, ,e, ,e, , ,e,e,e, , ,e, , , ,e, , ,e],
[ , , , ,e, , , , , ,e, ,n, ,e, , ,n, , ],
[ , ,e, ,n, ,e, ,e, , , ,e, ,n, , ,e, , ],
[ , , ,e, ,e, ,e, ,n,e,e, , ,e,e, , ,e, ]]
Ingresso:
[[e,e],
[e,e]]
Produzione:
null
0
,1
e2
o simili?