見出し画像

だれでもポケカプログラミング その6 エレキジェネレーターがヒットする確率①(後1ごっつぁんプリファイを目指す)

↑前回の記事はこちら。
カウンターカイナ組んでみました。雷エネルギー15枚積みのやつです。これを使って後1ごっつぁんプリファイを目指します。
まず今回はエレキジェネレーターがヒットする確率を出したいと思います。

後1ごっつぁんプリファイを決める条件は下記です。
・テツノカイナexがベンチにいる
・エレキジェネレーターを使ってベンチのテツノカイナexにエネルギーを3~4枚つける(そのためにはエレキジェネレーターが2枚以上必要)
・エネルギーが4枚以上ついたテツノカイナexをバトル場に出す
結構しんどいっすね。
これ正確にシミュレーションするにはブーストエナジー未来でバトル場のポケモンを逃がしたり、ペパーや博士の研究でエレキジェネレーターを引いてきたりなどもプログラムしないといけないですね。

とりあえず今日はエレキジェネレーターがどれくらいの確率でヒットするかシミュレーションしてみましょう。


カウンターカイナ?

使用するデッキはこちら。

エレキ0個 = 0
エレキ1個ヒット0 = 0
エレキ1個ヒット1 = 0
エレキ1個ヒット2 = 0
エレキ2個ヒット0 = 0
エレキ2個ヒット1 = 0
エレキ2個ヒット2 = 0
エレキ2個ヒット3 = 0
エレキ2個ヒット4 = 0
エレキ3個ヒット0 = 0
エレキ3個ヒット1 = 0
エレキ3個ヒット2 = 0
エレキ3個ヒット3 = 0
エレキ3個ヒット4 = 0
エレキ3個ヒット5以上 = 0
エレキ4個 = 0
エレキ4個ヒット1 = 0
エレキ4個ヒット2 = 0
エレキ4個ヒット3 = 0
エレキ4個ヒット4 = 0
エレキ4個ヒット5以上 = 0

こんな感じで集計していきます。ヒット3+手貼りでいけますので最低でもヒット3は必要ですね。

  #手札を7枚引く
  for i in range(7):
    手札.append(デッキ.pop())

  #たねポケもネオラントVも1枚もない場合マリガンカウント
  if 'たねポケ' not in 手札 and 'テツノカイナex' not in 手札:
    マリガン回数カウント += 1
  else
    #サイドを6枚引く
    for i in range(6):
      サイド.append(デッキ.pop())
    #1ドロー
    手札.append(デッキ.pop())

対戦準備はいつもの通りです。手札引いてたねポケいなければマリガン。たねポケいればサイド引いて1枚ドロー。

    if 'エレキジェネレーター' not in 手札:
      エレキ0個 += 1

エレキジェネレーターが手札にない場合はエレキ0個をカウント。ここは簡単。

    elif 手札.count('エレキジェネレーター') == 1:
      #トップを5枚見る
      for i in range(5):
        トップを5枚見る.append(デッキ.pop())      
        if '雷エネルギー' not in トップを5枚見る:
          エレキ1個ヒット0 += 1

エレキジェネレーターが手札に1枚あった場合、デッキのトップを5枚見て雷エネルギーがあるか確認。なければエレキ1個ヒット0をカウント。


    elif 手札.count('エレキジェネレーター') == 1:
      #トップを5枚見る
      for i in range(5):
        トップを5枚見る.append(デッキ.pop())      
      if '雷エネルギー' not in トップを5枚見る:
        エレキ1個ヒット0 += 1
      elif トップを5枚見る.count('雷エネルギー') == 1:
        エレキ1個ヒット1 += 1
      elif トップを5枚見る.count('雷エネルギー') >= 2:
        エレキ1個ヒット2 += 1
    else:
      エレキが2個以上 += 1

繰り返すとこんな感じになる。

一旦出力してみましょう。

雷エネルギーの数 15枚
たねポケの数 10枚
試行回数 100000
マリガン回数カウント 25978
マリガンになる確率 25.98%
エレキ0個 42683
エレキ1個ヒット0 5695
エレキ1個ヒット1 10667
エレキ1個ヒット2 9665
エレキが2個以上 5312

グラフにするとこんな感じですね。


マリガンを除くとこんな感じ。

エレキジェネレーターが2個以上の確率が7.2%…。結構高くない?1ターン目にエレキジェネレーターが1個あって、1個か2個雷エネルギーがヒットする確率は…27.5%!マリガンになる確率より高いんだな~!

一旦ここで区切ります。次回はエレキジェネレーター2個以上持ってる場合のプログラムを書きまーす。

#プログラミング
#python
#ポケカ
#プログラミング初心者
#python初心者
#ポケカ考察
#GoogleColab
#GoogleColaboratory
#ごっつぁんプリファイ
#テツノカイナex

いいなと思ったら応援しよう!