63 日目(雨のち曇り)当ブログは麻雀ブログではない
0:00 西新井の風景を静止画で伝えるテレビ番組を観ながら眠りにつく。 去年 8 月の足立区探索では西新井大師前駅には行けなかったのだ。
すぐに雨が降り出す。涼しくなってよく眠れる。7:15 起床。朝飯は納豆とそば。
手牌の分析コードをまだやる。そろそろ終われ。
10:00 前に大雨の中隅田公園にトイレとゴミ捨てに行く。
10:15 ローソンストア 100 言問橋店でおやつを買う。176 円。
- ピザパン
- ドーナツつぶあん (2)
麻雀の手牌分析だが、かなり難しいケースがある。
刻子を優先すると手牌が 3333444455556 のときに安い方をとってしまう。まずい。
理由を説明できないが、最初に雀頭を固定するのが場合分けしやすい?
33||345|345|456||45 平和(のはず)一盃口
33||345|444|555||36 イーシャンテン
33||444|555|456||33 無効なシャンポン待ち
3||333|444|555|456 無効な単騎待ち(イーシャンテンとみなす)
3||345|345|345|456 無効な単騎待ち
44||333|345|456||55 役なしシャンポン待ち
44||333|345|555||46 役なし嵌張待ち
44||333|456|555||34 役なし両面待ち
4||333|345|456|455 -- 4 in 455 により別手順の変形と判定
55||333|345|456||44 既出
55||333|444|456||35 役なし嵌張待ち
55||333|444|345||56 役なし両面待ち
5|333|345|456||445 -- 5 in 445 により別手順の変形と判定
6||345|345|345|345 二盃口単騎待ち
6||333|444|555|345 三暗刻単騎待ち
11:00 かくしごと最終回 4 度目の視聴。再放送がいくらなんでも多い。
- 主人公(父)自身が隠し子という設定だった。これで少年が登場する意味はわかった。
- フォークリフトの意味が相変わらずわからない。廃業後?
- 病室の番号が 510 番なのを見落としていた。後藤ってことか。
同じ順子を含む場合をきっちり考慮する。雀頭は後回しにしないか?
14:00 前に外出。真っ直ぐ横川コミュニティー会館図書室に移動。 新聞とふたたびの確率統計を読む。共分散の概念がわかった。
16:00 タイトー F ステーションオリナス錦糸町店で遊ぶ。 ビートマニア ARENA は久々に三人で競う。十段のヤツが正確だった。 MJ プロ卓東風戦。3 クレ遊んだ時点で焼鳥だったので、泣きの 1 クレ追加。 すると 123 のチャンタ一盃口三色辺張待ちをリーチ一発ツモという都合の良いアガリを仕上げる。
【SCORE】
合計SCORE:-17.8
【最終段位】
四人打ち段位:雀狼 幻球:7
【6/28の最新8試合の履歴】
1st|------*-
2nd|---*-*-*
3rd|-*--*---
4th|--*-----
old new
【順位】
1位回数:1(14.29%)
2位回数:3(42.86%)
3位回数:2(28.57%)
4位回数:1(14.29%)
平均順位:2.43
プレイ局数:30局
【打ち筋】
アガリ率:10.00%(3/30)
平均アガリ翻:5.00翻
平均アガリ巡目:7.33巡
振込み率:10.00%(3/30)
【6/28の最高役】
・倍満

18:05 カスミオリナス錦糸町店。328 円。焼きそば&炒飯。
18:30 ビッグエー墨田業平店。261 円。
- 小粒納豆 (3)
- パンケーキいちご&マーガリン
- レーズンロール (4)
- 野菜ジュース 350ml
19:00 前に部屋に着く。帳簿をつけて晩飯にする。 気分転換に麻雀の練習をしていると、CPU 雀士が 100 符の手をアガる。珍しい。

電話ボックスへ行って戻る。風呂に入って出る。20:55 暑い。 麻雀のコードを続ける。だんだん出口の光が見えてきた? 何と言うか、13 枚スタートの場合は面子ファーストと雀頭ファーストと単騎ファーストを全部テストする?
22:30 おそらく峠を超えた。理論的な裏付けがないコードなのだが。
bash$ python classify.py
Counter({6: 1}) (Chow(345), Chow(345), Chow(345), Chow(345))
Counter({3: 1}) (Chow(345), Chow(345), Chow(345), Chow(456))
Counter({6: 1}) (Pong(3), Pong(4), Pong(5), Chow(345))
Counter({3: 1}) (Pong(3), Pong(4), Pong(5), Chow(456))
Counter({3: 2}) Counter({3: 1, 6: 1}) (Pong(4), Pong(5), Chow(345))
Counter({3: 2}) Counter({3: 2}) (Pong(4), Pong(5), Chow(456))
Counter({3: 2}) Counter({4: 1, 5: 1}) (Chow(345), Chow(345), Chow(456))
Counter({4: 2}) Counter({5: 2}) (Pong(3), Chow(345), Chow(456))
Counter({4: 2}) Counter({4: 1, 6: 1}) (Pong(3), Pong(5), Chow(345))
Counter({4: 2}) Counter({3: 1, 4: 1}) (Pong(3), Pong(5), Chow(456))
Counter({5: 2}) Counter({5: 1, 6: 1}) (Pong(3), Pong(4), Chow(345))
Counter({5: 2}) Counter({4: 2}) (Pong(3), Chow(345), Chow(456))
Counter({5: 2}) Counter({3: 1, 5: 1}) (Pong(3), Pong(4), Chow(456))
ホームレスのときからたまに視聴していた美食探偵の最終回を観終わって 23:45 消灯開始。
Programming Notes
Python の itertools.chain() と itertools.chain.from_iterable() の微妙な差がわかるか。