タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

algorithmとmazeに関するiNoのブックマーク (6)

  • 迷路を最短経路で(ry - 月の塵

    Scheme気が向いたので、例の迷路を最短経路で解く問題を Gauche で書いてみた。 (use srfi-1) (define *maze* '( "**************************" "*S* * *" "* * * * ************* *" "* * * ************ *" "* * *" "************** ***********" "* *" "** ***********************" "* * G *" "* * *********** * *" "* * ******* * *" "* * *" "**************************" )) (define (maze-at pos) (string-ref (list-ref *maze* (inexact->exact (real-p

  • 迷路生成アルゴリズム

    Article: 迷路生成アルゴリズム 迷路を用いたものはゲームに限らず色々ありますが、どのように作られているか考えた事はないでしょうか。実はこのロジック、とても単純なものになっていて、知っているだけで楽に作れるようになります。何種類か方法がありますが、ここでは一番楽な「棒倒し法」を紹介していきます。 - 棒倒し法による迷路生成アルゴリズム。 Article Written: 99/7/4 壁の用意 (図1) まずはこのように、四角の外壁の中に、さらに等間隔に内壁を配置します。色分けされているのは便宜上のもので実際はどうでも良く、0(壁がある)と1(壁がない)の情報でも構成する事ができます。この壁を用意するのに気を付けなければならない事は、外壁を大きめに取っておく事です。多くのゲームではこの全体像が見える事はなく、スクロールという概念を用いたりして一部しか見えないようになっています。その際

  • 迷路作成プログラムの製作

    [応用編・立体迷路ゲームDL] No001 迷路作成プログラムの製作 コンパイラ : VC++ 6.0 プログラム種類 : Windowsコンソールアプリケーション はじめに 私が最初に作った格的なプログラムが高校生のころに作った迷路ゲームでした。 迷路の中に実際にいるような立体表示で、迷路のなかを歩き回って出口にたどりつくという単純でありがちなゲームでしたが、 迷路を作成するロジックも自分でいろいろ研究して考えたものです。 そこで、第1回はこの迷路を作るプログラムを製作しようと思います。 図1に示すような迷路を作成します。迷路の特徴は ・全体が長方形の平面、プログラムではサイズを指定できるようにします。 ・通路と壁の幅は同じ長さ。厚さが2つ分以上の通路や壁は存在しません。 ・通路のどの地点からどの地点まででも到達するルートが1つだけあります。 言い換えれば、スタートとゴールを

  • クラスタリングによる迷路作成アルゴリズム

    はじめに クラスタリングアルゴリズムにより、解くと絵が浮かび上がる 迷路を作成する方法を紹介する。 クラスタリングとは ウェブのリンク情報や、mixiの友人関係など、ネットワークの性質を 知りたいことがよくある。このとき、ネットワークの性質として このネットワークにおいて任意に選んだ要素Aと要素Bはつながっているか? このネットワークは全体がつながっているか? つながっていないとしたらいくつのグループに分かれるか? 要素数最大のグループはどれか? などの情報が欲しくなる。このような解析をするときに 必要となるのがクラスタリングである。 クラスタリングとは、同値関係のリストが与えられたときにグループ分けを することである。たとえば、 友達友達友達である と定義すると、友人関係は同値関係を作る。 その上で、 A君とB君は友達 C君とE君は友達 B君とD

  • 穴掘り法

    ここで、 迷路作成のアルゴリズムの一つである穴掘り法について簡単に説明する。 先ず、縦横それぞれ奇数個サイズのマスを想定する。 左上を原点として、 偶数座標のマスが迷路の壁となり、奇数座標が迷路の通路として使用される。 最初に全てのマスを「壁」として初期化する。 以降の例では、■を壁、□を通路として表示する。 ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ 縦横それぞれ奇数座標のマスをランダムに選択する。 下図では、左上を原点(0,0)として右に3、下に3の地点を選択したものとする。 (「○」を現在の注目点を意味する) ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■○■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■■■■■■■■■ ■

    iNo
    iNo 2010/01/19
    迷路作成アルゴリズム
  • 人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。

    さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 たとえば、S:スタート G:ゴール *:壁 $:解答の経路 としたとき、 ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * * *********** * * * * ******* * * * * * ************************** という入力に対し、 ************************** *S* * $$$ * *$* *$$*$ ************

    人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。
  • 1