思うだけで学ばない日記 2.0

思うだけで学ばない日記から移転しました☆!よろしくお願いします。

2016-01-01から1年間の記事一覧

Q.未使用引数の注意文出力を回避するには

なんかスゲー混乱したQ&Aを見たのですが、 ttp://okwave.jp/qa/q2713705.html こんなん引数をvoidにキャストしたら終わりやん…? つまり #define UNREFERENCED_PARAMETER(a) ((void)(a)) void foo(int a, int b, char* c, double d) { UNREFERENCED_PARAMETER(…

置換表は煩雑です!

直前のエントリのはシンプルなネタだが、いざ実際に実装しようとするとカナーリ面倒なことに気がつく、 いや複雑な作り込みを要するという意味ではなくて、慎重に考えねば意図したものとは全然違った確率の計算になってしまう危険性が多きいすぐる、 ぶっちゃけ…

キャーこの人置換表です

ハッシュ関数のバリデーション いま何か適当な分布(一様とは限らない)に従い生起する事象sがあったとして、ハッシュ関数fでもってハッシュキーhをh=f(s)として作ったとする このとき(sの分布は一様とは限らないにもかかわらず)hの剰余h % Nは有限の区間[…

All about 配列表現

例の聖なる書物には配列表現で実現することしか書いていないので、配列以外の表現は禁忌に抵触する 故に配列表現の高速化を試みた特に飛び駒の利きとOUのPINについては、フツーに作ると駒のmake moveの度に、駒の除去に際して一旦消して、駒を置いた直後に書き…

All about 2駒間の相対関係のインデックス化

例えば将棋とかは9×9マスなので、フツーに作ると9×9ぐらいの2次元配列になるが、盤面を配列方式で表す技法を記した例の聖なる書物には2次元配列では遅いから1次元配列にしなさいと書いてあった 例えば、筋s、段dの駒をboard[(s この(s ところがやってみると例え…

All about 三角化

いま二次元配列x[i][j]が任意のi, jについてx[i][j] = x[j][i]を満たすとする*1 フツーに作ると(iの上限+1)×(jの上限+1)語ぐらいの記憶域が要るが、常に 高次側のindex < 低次側のindex とする約束とせば、 k = S(i, j) = (i * (i - 1)) / 2 + j というindex k…

エイプリルフール

ひょっとしたら今年はキャンセルせずに済むかもしれない… かもしれない運転、

All about テーブル化

スパースなデータのテーブル化 いまS, Tを適当な(離散的な)順序集合として、写像d:S→Tをテーブルで実現するというのはよくある話で、y=d(x)のx∈Sを添え字とする配列aに、y∈Dを代入しとけばおk しかしこれ一本槍ではSがスパースな集合だったりするとヒジョーに…

探索のシュマ

AI

これはもう単純な話で、深く読めば読むほどよろしい ていうか終局まで読み切る以外に真実の解を知る術が無いという問題だというのに、探索しない選択肢などあろうもののかは、 NPSも高ければ高いほど良い、まあオーダリングの精度である程度代替が利くが*1、…

局面評価のシュマ

AI

言わずもがななことだが、将棋の必勝手順を求める問題はNP困難か何かである ということは、P=NPが証明でもされない限り、究極の必勝法は終局までの読みきり一択であって、それより簡単に済む完全勝利の方程式など存在しないのだという結論になる では巷で行…