タグ付けされた質問 「game-of-life」

John ConwayのGame of Lifeに関する課題。

6
安定したゲームオブライフ
チャレンジ: 0と1のマトリックス(または2D配列)が与えられた場合、Conwayのゲームオブライフが安定状態に到達するまでのステップ数を出力します。1に到達しない場合は-1を出力します。安定状態とは、各ステップでセルがオンまたはオフにならない状態です。ゲームは、指定されたマトリックスで実行され、上部と下部が接続され、側面が接続されている必要があります。(つまり、4x3トーラス上で実行される4x3マトリックスが与えられた場合)入力マトリックスは15x15より大きくなりません。 注:マトリックスが安定した状態で開始する場合、出力は0になります。 サンプル: 入力: [[0,0,0], [0,1,1], [0,1,0]] 出力: 2 プロセス:(表示する必要はありません) [[0,0,0], [0,1,1], [0,1,0]] [[1,1,1], [1,1,1], [1,1,1]] [[0,0,0], [0,0,0], [0,0,0]] 入力: [[0,0,1,1], [0,1,1,1], [0,1,0,0], [0,1,1,1]] 出力: 2 プロセス: [[0,0,1,1], [0,1,1,1], [0,1,0,0], [0,1,1,1]] [[0,0,0,0], [0,1,0,1], [0,0,0,0], [0,1,0,1]] [[0,0,0,0], [0,0,0,0], [0,0,0,0], [0,0,0,0]] 入力: [[0,1,0,0], [0,1,0,0], [0,1,0,0], [0,0,0,0]] 出力: -1 プロセス: [[0,1,0,0], [0,1,0,0], …

10
拡張ウェクスラー形式を解読する
この課題は、user48538によるサンドボックス投稿に基づいています。彼はもうこのサイトで活動していないので、私はこの挑戦を引き継ぎました。 apgsearch、ライフゲームのための分散スープ検索プログラムおよび検索結果のデータベース、Catagolueの使用apgcodesパターンを分類して示すために。apgcode自体は、1992年にAllan Wechslerによって開発されたパターン表記の拡張である拡張Wechsler形式を使用します。 以下の例と画像はLifeWikiから取られています。 正規表現に一致するセット内のn文字の文字列は[0-9a-v]、n列幅の5行のストリップを示します。各文字はビット列に対応する垂直列内の5つのセルを表し、[ 00000、10000、01000... 00010、10010、01010、11010... 11111]。 たとえば27deee6、重量級の宇宙船に対応します: ⎡⎣⎢⎢⎢⎢⎢⎢01000111001011001110011100111001100⎤⎦⎥⎥⎥⎥⎥⎥[01100001101111011111100111100000000] \begin{bmatrix} {\color{Gray}0} & 1 & 1 & {\color{Gray}0} & {\color{Gray}0} & {\color{Gray}0} & {\color{Gray}0} \\ 1 & 1 & {\color{Gray}0} & 1 & 1 & 1 & 1 \\ {\color{Gray}0} & 1 & 1 & 1 & 1 & 1 …

13
グライダーを配置します!
この: はグライダーです。 ConwayのGame of Lifeでは、グライダーは有名なパターンであり、ボード全体を素早く横断します。今日の課題では、ASCIIアートゲームオブライフボードを描画し、その上にグライダーを配置します。 開始するボードは次のとおりです。 |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| このボードは、すべてパイプ|とアンダースコア_で構成されており、10x10です。2つの整数「x」と「y」を取り込んで、それらの座標でグライダーを使用してこの同じボードを出力するプログラムまたは関数を作成する必要があります。たとえば、位置(1, 1)(0インデックス)にグライダーがある場合、次を出力する必要があります。 |_|_|_|_|_|_|_|_|_|_| |_|_|*|_|_|_|_|_|_|_| |_|_|_|*|_|_|_|_|_|_| |_|*|*|*|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| グライダーが決して範囲外に配置されることはないと想定できるため、xとyは常に[0-7]範囲内にあります。1からインデックスを付けた座標を取ることもできますが、回答でこれを指定する必要があります。この場合、入力は常に[1-8]範囲内にあります。以下にいくつかの例を示します(すべて0から始まる): 0, 0: |_|*|_|_|_|_|_|_|_|_| |_|_|*|_|_|_|_|_|_|_| |*|*|*|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| 7, 7: |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| |_|_|_|_|_|_|_|_|_|_| …

1
人生:創造されたか進化したか?
正方形のGame of Lifeグリッドの状態を考慮して、それが以前の状態から進化したのか、または作成されたにすぎないのかを判断します。つまり、状態が「Garden of Eden」状態であるかどうかを識別します。 入力 1が「生きている」ことを示し、0が「死んでいる」ことを示す状態の正方形のグリッド。必要に応じて、0と1の代わりに2つの識別可能なシンボルを選択できます。 グリッドの辺の長さはゼロではありませんが、任意の自然数1 <= N <= 20です。 入力グリッド外のセルのいずれかまたはすべてがこの世代で生きている可能性があり、それらのいずれかまたはすべてが前の世代で生きている可能性があります。考慮される宇宙は無限であるため、境界条件はありません。入力のエッジは、ユニバースのエッジではありません。具体的には、グリッドはラップしません。 入力は、行で区切られた文字列または単一の文字列の形式です。必要に応じて、グリッドの辺の長さまたは領域を追加入力として(グリッドの前後に)取ることができます。 許容される入力形式: 010,101,010 010101010 010 101 010 3 010101010 出力 次世代の入力状態につながる可能性のある以前の状態(入力グリッドよりも大きい状態を含む)がない場合は「作成済み」。 次世代の入力状態につながる可能性のある少なくとも1つの可能な以前の状態(入力グリッドよりも大きい状態を含む)が存在する場合、「進化した」。 必要に応じて、「作成」と「進化」の代わりに、2つの区別可能な文字列または数字を使用できます。 可能な以前の状態は、入力と区別する必要がないことに注意してください。状態がそれ自体を次世代として持っている場合、それは進化したと見なされるべきです。 テストケース 010 101 010 Evolved 0101110100 0010101001 1011100110 0101111101 1001001111 1111001001 1011111010 0110011101 1001010100 0010111010 Created 作成されたテストケースは、Achim FlammenkampのGame of Lifeページから取得されます。 注意 このチャレンジを書いてくれたtrichoplaxに感謝し、ここから採用しました

3
人生のゲームを3Dで実装する
課題は、人生のゲームの3Dでの最短の実装を見つけることです(例)。これらは規則です: 隣接するセルが1つ以下のセル(この場合はキューブ)は、まるで孤独であるかのように死にます。 空のセルを正確に5つのセルが囲む場合、それらは繁殖してそれを埋めます。 セルに8個以上の近隣がある場合、過密状態で死にます。 少なくとも10x10x10にします。レイヤーは次のように個別に出力されます。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 X 0 0 X 0 0 0 0 0 0 0 X X X …

1
正規表現の検証正規表現[終了]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Code Golf Stack Exchangeのトピックになるようにします。 去年閉鎖されました。 入力として正規表現文字列を受け入れ、それが有効かどうかを確認する正規表現を作成します。基本的に、正規表現はそれ自体を検証できるはずです。(無効な正規表現は検証されないため、使用できません.*。;) フレーバーは、よく知られている実装(Perl、sed、grep、gawkなど)によって完全にサポートされている必要があり、それらの実装がサポートするものを完全にサポートしている必要があります。[弁護士が話すことを心配しないでください。私は、スマート***の可能性のある抜け穴を削除しようとしています。] 私はそれをコードゴルフしたいと思いますが、機能が豊富ではないフレーバーを知って使用している人々に優位性を与えるのではないかと心配しています。または、私の心配は根拠がありませんか?
17 code-challenge  code-golf  code-golf  game  sudoku  code-challenge  math  ai-player  code-challenge  sorting  rosetta-stone  code-challenge  code-challenge  programming-puzzle  code-golf  number  code-golf  maze  code-golf  math  regular-expression  code-golf  sequence  code-golf  graph-theory  code-golf  string  word-puzzle  natural-language  brainfuck  metagolf  optimized-output  fastest-algorithm  code-golf  game-of-life  cellular-automata  code-golf  puzzle-solver  grid  code-golf  combinatorics  binary-tree  popularity-contest  code-challenge  code-golf  ascii-art  kolmogorov-complexity  brainfuck  metagolf  code-golf  c  date  code-golf  word-puzzle  crossword  word-search  code-golf  code-golf  quine  code-golf  string  random 

3
最長の非繰り返しGame-of-Lifeシーケンス
正の整数Nを与え、ゲームオブライフルールで最長の非反復シーケンスを生成し、トーラスで再生される固定パターン(長さ1のサイクル)で終わるN x Nグリッドの開始パターンを決定します。 目標は最短のプログラムではなく、最短のプログラムです。 世界は有限であるため、最終的にはループに陥り、すでに訪れた状態を繰り返します。このループに期間1がある場合、開始パターンは有効な候補です。 出力:開始パターンとシーケンス内の一意の状態の総数(開始パターンを含む)。 現在、1x1トーラスは特別なものです。セルはそれ自体に隣接していると見なされているかどうかに関係ありませんが、実際には問題はありません。いずれの場合も、単一の生きているセルは(過密または孤独の)死ぬだけです。したがって、入力1は、長さが2のシーケンスを生成します。このシーケンスは、1つのセルが生き、その後は永遠に死んでいます。 この質問の動機は、忙しいビーバー機能に類似しているが、メモリに限界があるため、間違いなく複雑です。これは、OEISにも含めるのに適したシーケンスです。 N = 3の場合、シーケンスの長さは3で、左側のパターンは完全に黒い3x3正方形に達し、その後死にます。(1サイクルの一部であるすべてのパターンが削除されます)。

1
戦略的消失
この投稿は、このmathoverflow投稿に大まかに触発されています。 Vanisherは、ConwayのGame of lifeのパターンで、1ステップ後に完全に消えます。たとえば、次のパターンはサイズ9のVanisherです。 Vanishersの興味深い特性は、生きているセルを追加するだけで、任意のパターンを消失パターンにすることができることです。たとえば、次のパターンは、次のような消失パターンに完全に囲まれます。 ただし、さらに少ない数の生細胞を追加することで、そのパターンをVanisherにできます。 あなたの仕事は、私たちのためにこの仕事をするプログラムを書くことです。入力としてパターンが与えられ、入力を含む消失パターンを見つけて出力します。必ずしも最適なパターンを見つける必要はありません。 得点 プログラムにスコアを付けるには、サイズ6のポリレットすべてで実行する必要があります(対称的に同等の場合を二重にカウントするのではありません)。 これは、各ポリプレットを独自の行に含むペーストビンです。合計で524個あるはずです。これらは、(x,y)それぞれが生細胞の位置である6つの座標(タプル)のリストとして表されます。 スコアは、これらすべてのポリプレットをVanishersにするために追加された新しいセルの総数になります。 ネクタイ 同点の場合、実行するプログラムのサイズ7ポリレットのリストを提供します。 IO IOをかなり柔軟にして、適切な形式で入出力できるようにしますが、おそらく、入力した生の入力データと同じ形式で入力したいと思うでしょう。フォーマットは複数の実行で一貫している必要があります。 タイミング プログラムは、妥当なマシンで妥当な時間(1日未満)で実行する必要があります。私はこれをあまりにも強制するつもりはありませんが、私たち全員がうまくプレイしたいなら私は好むでしょう。

7
振動の平等
on [l, r]から始まる、時間単位ごとに1単位の速度で、2つの整数点間で振動するオブジェクトがあります。あなたが仮定することができます。たとえば、オブジェクトがで振動する場合、次のようになります。lt=0l < r[3, 6] t=0 -> 3 t=1 -> 4 t=2 -> 5 t=3 -> 6 t=4 -> 5 t=6 -> 4 t=7 -> 3 t=8 -> 4 しかし、オブジェクトは継続的に振動するため、ともt=0.5 -> 3.5ありt=3.7 -> 5.3ます。 、の間[l1, r1]で振動する2つのオブジェクトが与えられた[l2, r2]場合t、2つのオブジェクトが同じ位置を共有するような時間が存在するかどうかを判断します。l1, r1, l2, r2任意の便利な形式でテイクを作成し、真実/偽の値を出力します。 真実の入力: [[3, 6], [3, 6]] [[3, 6], [4, 8]] …
15 code-golf  array-manipulation  decision-problem  code-golf  math  number-theory  palindrome  integer-partitions  code-golf  math  decision-problem  geometry  code-golf  string  random  code-golf  ascii-art  code-golf  kolmogorov-complexity  primes  code-golf  kolmogorov-complexity  code-golf  graphical-output  code-golf  number-theory  primes  integer  factoring  code-golf  sequence  array-manipulation  integer  code-golf  array-manipulation  matrix  code-golf  sequence  binary  code-golf  game  cellular-automata  game-of-life  binary-matrix  code-golf  string  ascii-art  code-golf  random  generation  logic  code-golf  string  code-golf  code-golf  sequence  array-manipulation  random  apl  code-golf  code-golf  sequence  primes  code-golf  math  sequence  integer  code-golf  number  arithmetic  array-manipulation  decision-problem  code-golf  ascii-art  number  code-golf  restricted-source  quine  code-golf  chess  board-game  code-golf  math  sequence  code-golf  number  sequence  kolmogorov-complexity  code-golf  number  sequence  arithmetic  code-golf  math  number  alphabet  code-golf  ascii-art  classification  statistics  apl  code-golf  array-manipulation  matrix  code-golf  string  kolmogorov-complexity  code-golf  sequence  binary  base-conversion  binary-matrix  code-golf  string  classification  code-golf  tips  python  code-golf  combinatorics  binary  subsequence  restricted-time  code-golf  number  number-theory  code-golf  math  number  complex-numbers  code-golf  string  code-golf  string  code-golf  string  random  game  king-of-the-hill  python  code-golf  number  sequence  code-golf  number  sequence  code-golf  code-golf  math  number  array-manipulation  code-golf  array-manipulation  decision-problem  code-golf  string  code-golf  sequence  integer 

4
人生のルールを変える
リアルなセルラーオートマトンは、コンウェイのゲームオブライフに似たセルラーオートマトンであり、(理論的に)無限大の正方形グリッドで動作します。 。 ただし、これらのLike-likeバージョンは重要な点で異なります。特定のセルが生き残るためのルールと、特定のセルが次世代に生き残るためのルールです。 たとえば、古典的なGame of Lifeはルールを使用しますB3/S23。つまり、新しいセルを生成するには3つの生きたセルが必要であり、生き残るには2つまたは3つの生きている隣人が必要です。この挑戦のために、我々は隣人がそれ自身を含まないので、各セルがちょうど8つの隣人を持っていると仮定します。 タスクには、開始構成、出生ルール、生存ルール、および正の整数(実行する世代数)が与えられ、可能な限り短いコードで指定された世代数のルールを使用して、Life-likeオートマトンをシミュレートします。最初の構成は、正方行列/ 2次元配列または複数行の文字列になりますが、選択できます。その他は、合理的な形式と方法で提供されます。 たとえば、出生規則が12345678(任意の生きている隣人)である場合、生存規則は2357あり、開始構成は 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 次の2世代は Generation 1: Generation 2: 0 0 0 0 0 1 1 1 1 1 0 …

4
ゲーム・オブ・ライフと疲労
StewieのGame of Life and Fatigueは、より有名なConwayのGame of Lifeによく似ています。 StewieのGame of Life and Fatigue(GoLF)の宇宙は、正方形のセルの無限の2次元直交グリッドであり、それぞれが生きている、死んでいる、または疲れている、3つの可能な状態の1つにあります。すべてのセルは、隣接する8つのセル(水平、垂直、または斜めに隣接するセル)と相互作用します。時間の各ステップで、次の遷移が発生します。 人口が少ないことが原因であるかのように、生存細胞が2つ未満の生存細胞は死にます。 2つまたは3つの生きている隣人を持つ生きている細胞は、次の世代まで生き続けます。 過密状態のように、3つ以上の隣接セルを持つ生存細胞は死にます。 ちょうど3つの生きている隣人がいる死んだ細胞は、まるで生殖のように生きている細胞になります。 2世代連続して生存していた細胞は、まるで疲労のように死にます。次世代になるまで、再び目覚めることはできません 入力グリッドの境界の外側にあるセルは、崖から落ちたように死んでいます。 チャレンジ: あなたの課題は、GoLFの初期状態を表すn行m列の次元のグリッドと整数pを取り、p世代後のゲームの状態を出力することです。 ルール: 入力形式と出力形式はオプションですが、入力/出力グリッドは同じ表現でなければなりません 印刷可能なシンボルを選択して、生細胞と死細胞を表すことができます(私は1生細胞と0死細胞に使用します)。 インデックスが0か1かを選択できます。例でp=1は、は1ステップ後の状態を意味します。 各言語で最短のコードが優先されます セルラーオートメーションの組み込み機能が許可されています テストケース: 例では、pではなく、入力に入力グリッドのみを含めています。さまざまなp値の出力を提供しました。与えられた入力pに対応するグリッドのみを出力します。 Input: 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.