2016-12-24(Sat)
今回からは自手副露処理の部分を作っていってます。
ただ、本体のコードを書く前にいろいろと下準備がいることに気付きました。
具体的には、
・再帰計算パートで自手副露数が変動することを想定して作ってなかったのを調整。(かなり多くの関数について引数を追加することをやったので、時間がかかった。)
・再帰計算パートで鳴きによってツモ山がずれる(特に海底関連)ことを想定してなかったのでその部分もこまごまと変更。(引数を巡目から残り山枚数に変更したことにより、かなり多くの箇所をいじる必要が出てきた。)
ようやく下準備が(たぶん)できて、さっきまで本体のコードを書いていました。
手順としてはまず自手ポンの方が簡単なので、そちらから手を付けます。(チーだと牌の晒し方とかが絡んでくるのでちょっと難易度が上がる。)
簡単のため、とりあえずは以下のケースのみを考えます。
・シャンテン数が減る可能性のある牌(ツモにおけるシャンテンが下がる有効牌)でかつ対子以上で持ってる牌のみポンを考慮する。シャンテン変わらずの鳴きやシャンテン数を増やしてタンヤオ移行とかは考慮しない。
・黒5をポンするときに赤5が手牌にあったら必ず赤5を含めて晒す。
・現物食い替え禁止を考慮しない。(打牌候補の中に現物食い替えに該当するものが含まれていても特に候補から除外とかはしていない。)
シャンテン変わらずの鳴きや現物食い替え禁止についてはわりと重要度が高い気がしますがある程度作り終えてからにします。
まだ作ってる途中なので、特に今日はデータはありません。
またこれからがんばります。
ただ、本体のコードを書く前にいろいろと下準備がいることに気付きました。
具体的には、
・再帰計算パートで自手副露数が変動することを想定して作ってなかったのを調整。(かなり多くの関数について引数を追加することをやったので、時間がかかった。)
・再帰計算パートで鳴きによってツモ山がずれる(特に海底関連)ことを想定してなかったのでその部分もこまごまと変更。(引数を巡目から残り山枚数に変更したことにより、かなり多くの箇所をいじる必要が出てきた。)
ようやく下準備が(たぶん)できて、さっきまで本体のコードを書いていました。
手順としてはまず自手ポンの方が簡単なので、そちらから手を付けます。(チーだと牌の晒し方とかが絡んでくるのでちょっと難易度が上がる。)
簡単のため、とりあえずは以下のケースのみを考えます。
・シャンテン数が減る可能性のある牌(ツモにおけるシャンテンが下がる有効牌)でかつ対子以上で持ってる牌のみポンを考慮する。シャンテン変わらずの鳴きやシャンテン数を増やしてタンヤオ移行とかは考慮しない。
・黒5をポンするときに赤5が手牌にあったら必ず赤5を含めて晒す。
・現物食い替え禁止を考慮しない。(打牌候補の中に現物食い替えに該当するものが含まれていても特に候補から除外とかはしていない。)
シャンテン変わらずの鳴きや現物食い替え禁止についてはわりと重要度が高い気がしますがある程度作り終えてからにします。
まだ作ってる途中なので、特に今日はデータはありません。
またこれからがんばります。
スポンサーサイト