タグ付けされた質問 「maze」

迷路を伴う課題のために。

3
ローグライクのマップを生成する
今日は、ローグライクRPGのマップを生成します! サンプルマップ: ########## #### F# #### ## ## C#C# # ## # # C #E # #### # # # # #P # ########## #壁でPあり、プレイヤーの開始位置でFあり、到達しなければならないフィニッシュであり、C収集できるコインでありE、戦うことができる敵です。 地図の仕様: 高さと幅は両方とも10から39の間でなければなりません。高さは幅と同じである必要はありません。 マップの境界は壁で埋める必要があります。 P 左下隅に配置する必要があります。 F 右上隅に配置する必要があります。 1〜3人の敵がいるはずです。 2〜4枚のコインがあるはずです。 中央にある程度の壁があるはずです。そこから取得するためのパスでなければなりませんPすべてにC、EとF、プレイヤーが斜めに動くことができないということを念頭に置いて。 可能なすべての組み合わせには、発生する可能性があります。 ルール 最少バイトのプログラムが勝ちます。 プログラムは何も入力しないでください。 プログラムはエラーで終了しない可能性があります(致命的でない出力は問題STDERRありませんが、マップ生成後に不正なクラッシュを起こすことはできません!) 単一の末尾の改行が許可され、末尾のスペースが許可されます。 他の出力は許可されません。

12
座標とその値を一致させる
3つの入力項目、座標ペアのリスト、2D文字列、および1文字の文字列を指定すると、2D文字列の各座標の文字が1文字と等しいかどうかが出力されます。入力は任意の順序で取ることができ、座標には1インデックスを付けることができます。 2D文字列は、2Dリスト、線のリスト、または2D文字列として取得できます。 例: (0,0), "#_\n__", "#" -> True 文字列は #_ __ 座標(0,0)(左上から)の文字は#です。これは3番目の入力項目に等しい#ので、出力True(または任意の真の値) 例: [(0,0), (1,1)], "#_\n_#", "#" -> True 文字列は #_ _# 座標の文字(0,0)と(1,1)の両方であるが#、その出力は真です。 すべての座標がハッシュに一致する場合にのみ、出力は真になります。ただし、すべてのハッシュが一致する座標を持つ必要はありません。#2D文字列に(一部のテストケースで)単一の文字が出現しない場合でも、出力は不正です。 座標は常に2D文字列の境界内にあると想定できます。 その他のテストケース:(読みやすくするために、1文字を2番目にしています) [(0,0), (2,1), (3,0)], # #_## #_## True [(0,0), (1,1), (3,0)], # #_## #_## False (1,1 is not a hash) [(1,1)], a #a## #a## True …

4
迷路で壁をノックダウンする
ルール: このゲームでは、壁とオープンスペースで構成されるサイズN x Mの長方形グリッドの上部から開始します。入力はM文字のN行で、a .はオープンスペースをx指定し、aは壁を指定します。プログラムは、Kの壁を横切る左上隅から右下隅(対角線なし)へのパスが存在するように、最小数Kを出力する必要があります。 たとえば、次の入力があるとします。 ..x.. ..x.. xxxxx ..x.. ..x.. あなたのプログラムは出力する必要があります2。 その他の例: 出力4: xxxxx x.x.x x.x.x x..xx 出力0: .xxxxxxxx .x...x... .x.x.x.x. .x.x...x. ...xxxxx. 出力6: xx xx xx xx xx 追加のヒント: 作業が楽になる場合は、コマンドラインパラメータとしてNとMを指定できます。 プログラムにパスを何らかの形で印刷させることができる場合は、追加のクレジット。
10 code-golf  maze 

2
ASCII迷路圧縮
チャレンジ ASCII迷路の圧縮に特化した圧縮アルゴリズムを設計します。圧縮アルゴリズムと解凍アルゴリズムの両方を作成する必要があります。あなたのスコアはあなたの圧縮された迷路のサイズに基づいています。 迷路 これらの迷路は、主に文字で形成されている(床)、 、+、-、|及び#(壁)、及び正確に一つ各々の^(開始)及び$(エンド)。また、ASCII文字を含めることもできます。これは、床タイルとしてカウントされます。この課題の目的のために、迷路は解決可能である必要はなく、迷路の内容の実際の意味は無関係です。 + 少なくとも1つの水平方向に隣接する壁セルと少なくとも1つの垂直方向に隣接する壁セルがある壁セルに使用されます。 | 垂直方向に隣接する壁セルが少なくとも1つあり、水平方向に隣接する壁セルがない壁セルに使用されます。 - 水平方向に隣接する壁セルが少なくとも1つあるが、垂直方向に隣接する壁セルがない壁セルに使用されます # 他の壁セルに直角に隣接していない壁セルにのみ使用されます。 すべての迷路は長方形ですが、必ずしも規則的なグリッド/壁の配置があるとは限りません。 圧縮する迷路 迷路1 +----+---- | o | | | -- | o--+ | | | $ --^-+-+--- 迷路2 +-----+---+ | a | | ^ +-+-+ # | | | | B | | | | --+ | …

1
迷路ゲームのエンジンを構築する
これは「迷路を印刷」の質問のフォローアップです。この質問が気に入ったら、迷路生成アルゴリズムを追加してください;)。 このタスクでは、迷路で宝物を見つけてダンジョンから抜け出さなければならない1人のプレーヤー用のゲームエンジンを実装する必要があります。 エンジンは、標準入力.から迷路を読み取り、続いてコマンドラインで引数として指定された(ドット)ファイルを含む行を読み取ります。次に、プレイヤー@はマップ上のランダムな場所に配置されます。次に、エンジンは標準のioを通じてプレーヤーとの対話を開始します。 エンジンからプレイヤーへのコマンド: continue:ゲームが終了していません。周囲が印刷され、その後に.。プレイヤーは@キャラクターで表されます。観察できないセルはで表され?ます。 finished:ゲームが終了しました。ステップ数が印刷され、ゲームが停止します。 プレイヤーからエンジンへのコマンド: north:プレーヤーを上に移動します。 south:プレーヤーを下に移動します。 west:プレーヤーを左に移動します。 east:プレーヤーを右に移動します。 プレーヤーからの無効なコマンド(壁を叩くなど)は無視されますが、カウントされます。周囲の環境を自由に定義できます。 最短コードのポイント。 複雑な環境のポイント(たとえば、大きな領域を印刷し、で表示されないセルを置き換える?)。 io形式を尊重しないコードにはポイントなし 例: この例では、周囲はプレーヤーが真ん中にある3x3セルとして定義されています。 $ cat maze +-+-+ |#| | | +---+ $ python engine.py maze |# @ --- . east |#| @| --+ . north +-+ |@| | . south |#| @| --+ . west |# …
9 code-golf  maze 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.