Attenzione: Questo task ha un tempo limite di 10 minuti per l'invio della soluzione. Una volta richiesto un input, il timer partirà in automatico, e dopo la scadenza non sarà più possibile inviare una soluzione per quell'input. È sempre possibile richiedere un nuovo input, per cui non preoccuparti se il timer scade: dovrai semplicemente richiedere e scaricare un nuovo input.
Per aiutarti con questo task, abbiamo preparato delle tracce di soluzione, che includono solo le parti di lettura dell'input e scrittura dell'output (da tastiera e su schermo). Puoi decidere se leggere/scrivere su file decommentando le opportune righe di codice.
Poco prima della pubblicazione, Giorgio ha deciso di fare un'ultima modifica al logo del gioco.
Il logo consiste in una griglia , in cui ogni quadratino può essere bianco o nero. Giorgio ha già scelto il colore di ogni quadratino nel logo finale, e sa che per farlo è sufficiente incollare un adesivo nero rettangolare sopra al logo attuale, parallelo ai lati della griglia.
Tuttavia, per risparmiare materiale, vorrebbe usare un adesivo della minima area possibile.
Quanto vale quest'area?
La prima riga del file di input contiene un intero , il numero di casi di test. Seguono casi di test, numerati da a . Ogni caso di test è preceduto da una riga vuota.
Ogni caso di test è composto come segue:
Il file di output deve contenere la risposta ai casi di test che sei riuscito a risolvere. Per ogni caso di test che hai risolto, il file di output deve contenere una riga con la dicitura:
Case #t: x
dove t
è il numero del caso di test (a partire da ) e il valore x
è l'area minima di un adesivo che Giorgio può usare per apportare la modifica al logo, o se non è necessaria alcuna modifica.
Nei primi casi di test vale e .
Input:
2
3 4
BNBN
BBBN
BBNN
BNBN
BNNN
BNNN
2 2
BN
NB
BN
NB
Output:
Case #1: 4
Case #2: 0
Nel primo caso d'esempio per poter cambiare il logo è sufficiente applicare un adesivo , con un'area di . Con adesivi più piccoli non si riuscirebbe.
In figura sono mostrati il logo iniziale, l'adesivo applicato (in grigio) e il logo finale.
Nel secondo caso d'esempio il logo finale è uguale a quello iniziale, quindi non è necessario applicare alcuno sticker.