2

私は人生ゲームの問題をテストのために解決しようとしていました。そのゲームのルールは次のとおりです。

生きている隣人が2人未満の生きている細胞は、人口不足が原因であるかのように死にます。2つまたは3つの生きている隣人が次の世代に生きている生きている細胞。生きている隣人が3人以上いる生きている細胞は、過密状態であるかのように死にます。ちょうど3つの生きている隣人を持つ死んだ細胞は、まるで生殖によるかのように生きた細胞になります。

以下に示すブロック、ボート、ブリンカー、ヒキガエルのパターンなど、さまざまなパターンで作業をテストしました。しかし、私のコードは、示されているようにヒキガエルのパターンに対して期待される出力を提供していません...他のすべてのパターンに対しては正常に機能していますが。

TOADの次の出力を取得しています。

X--X
X---
--X-

いろいろなサイトをチェックしたところ、以下と同じ出力が表示されていましたが、ルールを適用すると、2行目と最後の列のセルが有効になりません。

それで、誰かが正しい出力がどれであるか教えてもらえますか?私はそれが私のテストのためであることを確認する必要があります...

ありがとう..

**Expected Output**

1.  Block Pattern
Input
X X
X X 
Output
X X
X X

2.  Boat Pattern
Input 
X X -
X - X
- X -
Output 
X X -
X - X
- X -

3.  Blinker Pattern
Input
- X -
- X -
- X - 
Output 
- - -
X X X
- - -

4. Toad Pattern
Input
- X X X
X X X -
- - X -
Output
X - - X
X - - X
- X - -
4

2 に答える 2

3

グーグルで見つけたヒキガエルのパターンの例はすべて次のようになります。

状態1:

- - - -
- x x x
x x x -
- - - -

状態2:

- - x -
x - - x
x - - x
- x - -

これらの2つの状態は次のように振動します。

ウィキペディアのアニメーション例

入力に一番上の行がないようで、一番下の行に余分な生細胞があります。ちなみに、あなたがおっしゃった「膨満感」のパターンは、小さなボートの俯瞰図のように見えるため、実際には「ボート」と呼ばれています。

見る:

于 2012-08-16T07:17:09.017 に答える
3

記述されたTOADの入力からの出力は、記述されたルールと一致します。記載されている期待される出力がルールと一致しません。

veredesmaraldが指摘しているように、プログラムに問題があるのは明らかではありませんが、TOADの解釈に問題があります。

また、TOADの入力/期待される出力を次のように定義したことにも注意してください。

Input
- X X X
X X X -
- - X -
Output
X - - X
X - - X
- X - -

そして、「出力」の行を1行上に移動すると、結果はTOAD入力/出力の標準/期待される定義と一致します。

Input
- X X X
X X X -
Output  // swapped with line below
- - X -
X - - X
X - - X
- X - -

何かが単に翻訳で失われたように見えます、そしてあなたのプログラムはうまくいくかもしれません。

于 2012-08-16T07:34:17.937 に答える