タグ

プログラミングとMSXに関するkiri-teaのブックマーク (1)

  • ぷよぷよのアルゴリズムとMSX BASIC

    再帰が現実的でないBASICで「盤面が与えられた時にどのぷよが消えるか」を計算するアルゴリズムが当時どうしても思いつかず「ぷよぷよ」にハマった時からずっと考えていました。 そしてある授業中に突然アルゴリズムがひらめきました。 以下がそのアルゴリズムのご紹介です。 フィールドが以下の様になっていると想定します。形だけ見ると「連鎖を作ろうとしてたけどやらかしちゃった」形ですね。 この場合、赤い「ぷよ」が消えることになります。 基的な方針としては「左上から注目する場所(セル)を右下まで走査する」「注目したセルにある「ぷよ」がいくつつながっているか調べる」です。 1. まず、左上のセルに注目します。 2. 左上のセルには何も無かったので次のセルに注目します。 このセルには赤い「ぷよ」が居ました。 これ以降はこの赤い「ぷよ」がいくつつながっているか(=消せるか)をチェックします。 3.「この「ぷよ

    ぷよぷよのアルゴリズムとMSX BASIC
  • 1