LoginSignup
4
3

More than 3 years have passed since last update.

コンプガチャのシミュレーション

Last updated at Posted at 2015-04-21

全て当確率で出る場合について
nはガチャのアイテム数
snは試行回数

# -*- coding: utf-8 -*-
import math
import random
import numpy as np
import time

start = time.time()

n = 100
sn = 10000

print("コンプガチャシミュレート (%d アイテム)" % n)
print("論理値            : {0:.5f}".format(sum([float(n) / i for i in range(1, n+1)])))

ress = []
for j in range(sn):
    box = []
    k = 0
    i = 0
    while(i < n):
        k += 1
        r = random.randrange(n)
        if r not in box:
            i += 1
            box.append(r)
    ress.append(k)
res = np.mean(ress)
print("シミュレーション値: {0:.5f} [{1}回]".format(res, sn))
print("- exec time: %d ms-" % (time.time() * 1000 - start * 1000))

結果例

コンプガチャシミュレート (100 アイテム)
論理値            : 518.73775
シミュレーション値: 516.38000 [10000回]
- exec time: 7640 ms-
コンプガチャシミュレート (10 アイテム)
論理値            : 29.28968
シミュレーション値: 29.32320 [100000回]
- exec time: 2775 ms-
4
3
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3