2008-11-15から1日間の記事一覧

Problem 84

http://projecteuler.net/index.php?section=problems&id=84 モノポリーのどのマスに止まりやすいか、という問題。 マルコフ連鎖だとおもう。ただ、状態数が120ぐらいある。 遷移行列を求めるのが面倒だ、というか面倒そう。 import Data.List import Data.A…

pakageを追加する Haskell (Windows)

目標:HackageDBからパッケージをインストール HackageDB:http://hackage.haskell.org/packages/hackage.html まず、どんなパッケージが利用できるのかを調べる方法。 ghc-pkg listこのページを参考にした。http://www.hmatrix.googlepages.com/installation…

Problem 83

Dijkstraで解く。 前と全く同じ。 むしろ、補助頂点の数が少ないので楽とも。 import Dijkstra import Data.Graph import Data.Array.IArray w = 80 xi (i,j) = w*i+j mkGraph = buildG (0,w*w).((w*w,0):).concatMap e$range b where b = ((0,0),(w-1,w-1))…

Problem 82

Dijkstraで解く。 先と同様。 import Dijkstra import Data.Graph import Data.Array.IArray w = 80 xi (i,j) = w*i+j mkGraph = buildG (0,w*w+1).(s++).(t++).concatMap e$range b where b = ((0,0),(w-1,w-1)) e (i,j) = [(xi (i,j),xi x)|x<-[(i-1,j),(i…

Problem 81(Dijkstra)

Dijkstraで解く。 import Dijkstra import Data.Graph import Data.Array.IArray w = 80 xi (i,j) = w*i+j mkGraph = buildG (0,w*w).((w*w,0):).concatMap e$range b where b = ((0,0),(w-1,w-1)) e (i,j) = [(xi (i,j),xi x)|x<-[(i+1,j),(i,j+1)],inRange…