タグ

2014年9月30日のブックマーク (2件)

  • 麻雀 和了判定(役の判定)アルゴリズム

    麻雀 和了判定(役の判定) アルゴリズム 最終更新日:2008/4/9 麻雀の和了判定を高速に行う方法について説明する。 和了の判定は通常バックトラック法を用いて行うが、バックトラック法は面子候補の組み合わせを総当たりで調べるため、処理に時間がかかるという問題がある。 1回実行するだけの場合は処理時間が問題になることはないが、思考ルーチンなどで繰り返し判定処理を行うような場合に、高速に処理できることが要求される。この記事では、そのような場合にインデックスを用いると高速に判定を行えること説明する。 まず、通常法方法を説明した後、インデックスを用いた方法を紹介する。 通常の方法(バックトラック法) 手牌を1つの雀頭と4つの面子に分けることができれば和了の形となる。(七対子と国士無双は例外) 雀頭と4つの面子を構成する牌が重ならない場合は、どのような順番で取り出しても判定することができる。しかし

  • "Dependency Injection" in Golang

    The worst kept secret about unit testing in general, and TDD specifically, is that it's primarily a design activity with future correctness as a side effect. Unit tests don't uncover all design problems, but they are effective with respect to cohesion and coupling issues and the rather significant principals that relate to these. One thing I've noticed from programmers who've spent most of their l