21個の項目がありMinecraftのあなたができることを作るだけ使用して木材木材から作られたとの項目は:
斧
ボート
ボウル
ボタン
チェスト
テーブルクラフト
ドア
フェンス
ゲート
鍬
ラダー
つるはしの
厚板の
圧力プレートの
シャベル
記号の
スラブ
階段が
付く
剣
トラップドアを
このリストでは、6種類の木製の厚板/スラブ/ドア/などを想定しています。すべて同じアイテムとしてカウントされます。それを考える別の方法は、1種類の木材にしかアクセスできないと仮定することです。
これら21のアイテムのそれぞれには異なるクラフトレシピがあります。これらのレシピはそれぞれ、キャラクターの2×2または3×3グリッドとして表されます.WPS。.空クラフトスロットであるWためである木材、Pのためのものである木の板、及びSためのものであるスティック。これらの特定のアイテムに他の文字は必要ありません。
たとえば、これはチェストのレシピです:
PPP
P.P
PPP
チャレンジ
21個のアイテムのうちの1つを上記のとおりに入力し、そのアイテムの有効な作成レシピを印刷するプログラムを作成します。
クラフティングレシピは翻訳不変であるため、入力がの場合、fenceこれらは両方とも有効です。
PSP
PSP
...
...
PSP
PSP
レシピが2×2グリッドに収まる場合、2×2または3×3グリッドに出力できます。例stick:
.P
.P
...
.P.
.P.
レシピは水平に(対称の垂直線の周りに)ミラーリングすることもできますが、これはx、、および階段のみに違いがあります。例hoe:
.PP
.S.
.S.
PP.
.S.
.S.
そのため、グリッドに収まり、正しい形(翻訳とミラーリングを無視)のレシピを出力することが、プログラムで必要なことです。これらは、公式ゲームが認識するすべてのレシピです。(レシピは垂直に回転またはミラー化できないことに注意してください。)
詳細
- stdinまたはコマンドラインから入力を取得します。入力は常に有効であると想定できます。入力(例えば
"chest")の周りに引用符が必要です。 - オプションの末尾の改行を含むstdout(または最も近い代替)への出力。
- バイト単位の最短提出が勝ちです。
例
すべての入力とサンプル出力のリストは次のとおりです。
axe
PP.
SP.
S..
boat
P.P
PPP
...
bowl
P.P
.P.
...
button
P.
..
chest
PPP
P.P
PPP
crafting table
PP
PP
door
PP.
PP.
PP.
fence
PSP
PSP
...
gate
SPS
SPS
...
hoe
PP.
S..
S..
ladder
S.S
SSS
S.S
pickaxe
PPP
.S.
.S.
planks
W.
..
pressure plate
PP
..
shovel
P..
S..
S..
sign
PPP
PPP
.S.
slab
PPP
...
...
stairs
P..
PP.
PPP
stick
P.
P.
sword
P..
P..
S..
trapdoor
PPP
PPP
...