2011-04-01から1ヶ月間の記事一覧

乱択アルゴリズムに挑む(その 4)

一通り道具は揃ったはずなので、とりあえずプログラムっぽく整えてみる。

乱択アルゴリズムに挑む(その 3)

k-CNF の充足可能な(つまり、全ての clause が真になるような真偽値の)割り当てを求める問題は k-SAT(Satisfiability Problem)と呼ばれる。同書にならって 3-SAT を考える。問題としては、これまた同書でユーリが「僕」に示した問題で行ってみよう。まず変数…

ビルドできん !

eclipse 側の環境変数の設定とか一通り済ませて mvn eclipse:eclipse を実行したら [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Maven Stub Project (No POM) 1 [INFO] ---------------------…

Vista に Maven 3.0.3 をインストールしてみた

mvn --version で動作確認しようとしたら Apache Maven 3.0.3 (r1075438; 2011-03-01 02:31:09+0900) Maven home: C:\apache-maven-3.0.3 Java version: 1.6.0_24, vendor: Sun Microsystems Inc. Java home: C:\Program Files\Java\jdk1.6.0_24\jre Default…

乱択アルゴリズムに挑む(その 2)

続き。同書では(変数)ないし¬(変数)を "literal"(リテラル) と呼び、literal のいくつかの論理和を "clause"(クローズ)と呼んでいる。clause のいくつかの論理積を CNF(Conjunctive Normal Form)と呼ぶ。全ての clause が k 個の literal からなるような CNF…

乱択アルゴリズムに挑む(その 1)

結城浩先生 (id:hyuki) の「数学ガール/乱択アルゴリズム」を読んでいて、これを実際にプログラミングするとしたらどうなるんだろうと考えてちょっとやってみることにした。まず、ランダムに真偽値を返す、次のようなメソッドを考えた。 static boolean ran…

XML を XSLT で変換した出力に DOCTYPE 宣言を入れるには

ちょいとググってみたらこうすればいいらしい。 <xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD HTML 4.01//EN" doctype-system="http://www.w3.org/TR/html4/strict.dtd" /> これは HTML 4.01 Strict で文字コードが UTF-8 の場合の書き方で、必要な部分を適宜書き換えれば他の場合にも対応できる。追記 : もしかして method を xml にすれば XHTML にも対応できる ? 追記の追記 : </xsl:output>…

Tomcat 5.x 以降での GET リクエストの文字化け対策

Tomcat 5.x 以降では、GET メソッドでデータを送信すると日本語の文字化けが起きる。GET メソッドを用いると request.setCharacterEncoding が無視されるためである。これを回避する方法は三つ。 GET メソッドではなく POST メソッドを用いる GET メソッドで…

テキスト形式ファイルの重複行を削除し更にソート

何かしらの数値計算をやって、結果をファイルに書き込んだとき、精度の関係で結果のテキストが重複行だらけになってしまっていることが経験上多かったので、そういったファイルの重複行を削除してついでにソートしてしまうというスクリプトを書いてみた。 # …

文字列と数値の連結

Ruby では文字列と数値を連結するとき、数値の方を自動で文字列には変換しない。そこで Numeric クラス(のスーパークラスである Object クラス)の to_s メソッドを使う。以下は簡単な例。 (1..9).each do |i| (1..9).each do |j| p = i * j if p < 10 then p…

簡単なサンプル

スクリプトとして書く場合 def sum(a:Int, b:Int):String = { return a + " + " + b + " = " + (a + b) } val a = Console.readLine("a = ").toInt val b = Console.readLine("b = ").toInt println(sum(a, b)) コンパイルして実行させる場合 object Sum { d…

はじめての Scala

はじめてのScala―「関数型+オブジェクト指向」の次世代言語! (I・O BOOKS)作者: 清水美樹出版社/メーカー: 工学社発売日: 2010/03メディア: 単行本 クリック: 72回この商品を含むブログ (8件) を見る結局これにした。CD はいらなかったのでもうちょっと安く…