Pour trouver une aiguille dans une botte de foin, vous devez trouver la plus grande botte de foin contiguë contenant exactement une aiguille . Notez que vous ne pouvez pas connecter des cellules sur des diagonales, uniquement gauche / droite / haut / bas.
Contribution
Un tableau (ou un certain nombre de lignes de saisie utilisateur, votre choix) de 'N'
(aiguilles) et '#'
(foin) caractères. L'entrée ne contient que ces deux caractères et doit contenir au moins un de chacun. Par exemple:
N#N#N
#NN##
###N#
N##N#
Production
La taille de la plus grande meule de foin valide possible. Pour notre exemple, nous produirions 11 (il y a 11 morceaux de foin et une aiguille).
#
# ##
###N#
## #
C'est le code-golf , donc le code le plus court l'emporte. Des restrictions d'échappatoire standard s'appliquent.
Cas de test
Entrée à gauche, possible meule de foin maximale à droite
Cas 1: 4
N## ##
NN# #
#NN N
#N# #
Cas 2: 7
### ###
N#N #
NNN N
### ###
Cas 3:10
N###N ###
#N#N# #N#
#N#N# # #
N###N ###
Cas 4:10
N#N#N
#N#N# # # #
##N## ##N##
#N#N# # # #
N#N#N
Cas 5: 1
NN#NN
NNNNN
#NNN# #N
NN#NN
la source