枠を超えて考えることは達成する価値のある目標であると聞き続けていますが、うまくやっているかどうかはどうすればわかりますか?
このジレンマを解決するために、理論的には次のような出力を生成するBrainwave-to-ASCII -translatorをすでに作成しました。
#
+------------+ #
| thinking | #
| | #
+------------+ #
#
または
#
+------+ #
| | thinking #
| | #
| | #
+------+ #
#
これにより、枠外で考えているかどうかを簡単に判断できます。(これら#
は出力の一部ではなく、新しい行を表します。)
ただし、バグのために、出力の小さなセクションのみが返される場合があります。
| | #
+---------+ #
thinking #
#
+#
|#
inking |#
#
#
タスク
ascii-reprensentationを読み取り、ボックス内にあるか、その外側にあるか、入力から認識できないかを返すプログラムまたは関数を記述することにより、BrainwaveからASCIIへの変換出力を自動的に分類するのを手伝ってくださいthinking
。
入力
リストとして、または次を含む改行で区切られた同じ長さの文字列のセット
- 文字列
thinking
またはその有効なプリまたはサフィックス +-|
長方形の箱またはその有効な部分を形成する文字- スペース
- NO
#
、これらはチャレンジに含まれており、入力行の終わりをマークします。
出力
- 箱の外にある場合、真の値
thinking
- ボックス内にある場合、偽の値
thinking
- 入力からボックス内にあるかどうかを判断できない場合、明確な3番目の多分値
thinking
例
真実:
#
+------+ #
| | thinking #
| | #
| | #
+------+ #
#
| | #
+---------+ #
thinking #
#
+#
|#
|#
inking |#
thinking #
-------+ #
++ # (thinking is not in the box, so it must be outside)
++ # (this is also the smallest possible box)
+ #
t#
+----+# (The box is not wide enough to contain "thinking")
---# (The box is not high enough to contain "thinking")
---#
文字列入力として:
" \n +------+ \n | | thinking \n | | \n | | \n +------+ \n "
" | | \n +---------+ \n thinking "
" \n +\n |\n |\ninking |"
"thinking \n-------+ "
" ++ \n ++ "
"+ \n t"
"+----+"
"---\n---"
"g++"
"k\n+"
偽物:
#
+------------+ #
| thinking | #
| | #
+------------+ #
#
+---------------#
| #
| #
| thinking #
| #
king | #
------+ #
+---#
|thi#
+---#
-#
n#
-#
文字列入力として:
" \n +------------+ \n | thinking | \n | | \n +------------+ \n "
" +---------------\n | \n | \n | thinking "
" | \nking | \n------+ "
"+---\n|thi\n+---"
"-\nn\n-"
多分:
thinking#
g|#
think#
-----#
| |# (box large enough to possibly contain the string)
| |#
+--#
| #
# (empty input)
文字列入力として:
"thinking"
"g|"
"|t"
"-\ni"
"h\n-"
"think\n-----"
"| |\n| |"
" +--\n | "
""
ルール
- これはcode-golfなので、できるだけ少ないバイトを使用してください。
- 多分価値は、それがtruthy / falsy値とは異なるだと、すべてのかもしれない-入力に対して同じであるとして自由に選択することができます。エラーになることもあります。
- 入力は常に有効であると仮定できます(たとえば、以外の文字が含まれていない
+-ghiknt|
、1つ以上のボックス、...)。
+\n+
、言葉で言えばボックスが小さすぎる