1
フェンスポストを見つける
バックグラウンド フェンスポスト工場の近くで原子爆弾が爆発しました!フェンスポストは私たちの文明の存続に不可欠であるため、できるだけ多くを救出する必要があります。放射線耐性のあるロボットを派遣して地域を探索していますが、彼らの人工視覚をプログラムするのはあなたの仕事です。 入力 入力は、|-#改行区切りの文字列として指定された2種類のフェンスポストパーツと瓦bleを表す、文字の長方形のグリッドです。フェンスの支柱は爆発によって恐ろしく損なわれ、一部は熱によって融合しました。候補のフェンスポストを、開始と終了で|1つ以上-のsがある(|-|または|---|そうでない||)水平パターン、または開始と終了で-1つ以上|のs がある垂直パターン(基本的に)のいずれかに定義します90度回転した水平候補フェンスポスト)。実際fencepostは別の候補fencepostとその部分のいずれかを共有しない候補fencepostあります。 出力 出力は、入力グリッド内の実際のフェンスポストの数です。 例 入力グリッドを検討する |#|-|#|## #||--|||# ###|#|--# ###-||--| -#-|#-|#- #---#-#-| #-#-|#--| このグリッドには5つの候補フェンスポストがありますが、実際のフェンスポストは2つだけです(太字で表示)。したがって、正しい出力は2です。 ルール 完全なプログラムまたは関数のいずれかを作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 追加のテストケース 入力: ##-- ||## -#|- |#|# 出力:0(0候補フェンスポスト) 入力: -##|-##-- #|#-|#||- --|-#|#|| ##||||-## ||#|--|-| -#|-#--|# |####|#-# 出力:0(5つの候補フェンスポスト) 入力: #|--|---|-|# ####|##--||- -|-##||#|--- -#|#-|-#-||| #|-##--###|- ---#-||-#-## #|---|###|-# -|---#-#|#|# |#--|####-|- 出力:4(8つの候補フェンスポスト) 入力: -|-||---##|# ---|######-# ####-##|#--| …