干し草の山で針を見つけるのにひねりを加えるには、ちょうど 1本の 針を含む最大の連続した干し草を見つける必要があります。対角線上のセルは接続できず、左/右/上/下のみ接続できることに注意してください。
入力
'N'
(針)および'#'
(干し草)文字の配列(またはユーザー入力行の数、選択)。入力にはこれらの2文字のみが含まれ、それぞれ少なくとも1文字が含まれている必要があります。例えば:
N#N#N
#NN##
###N#
N##N#
出力
有効な最大の干し草のサイズ。この例では、11を出力します(11個の干し草と1本の針があります)。
#
# ##
###N#
## #
これはcode-golfなので、最短のコードが優先されます。標準的な抜け穴の制限が適用されます。
テストケース
左に入力、右に可能な最大の干し草の山
ケース1:4
N## ##
NN# #
#NN N
#N# #
ケース2:7
### ###
N#N #
NNN N
### ###
ケース3:10
N###N ###
#N#N# #N#
#N#N# # #
N###N ###
ケース4:10
N#N#N
#N#N# # # #
##N## ##N##
#N#N# # # #
N#N#N
ケース5:1
NN#NN
NNNNN
#NNN# #N
NN#NN