Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from random import randint
- import sys
- def gacha(n):
- result = {
- 'silver': 0,
- 'gold': 0,
- 'platinum': 0,
- 'black': 0
- }
- black_saver = 0
- platinum_saver = 0
- for _ in range(n):
- dice = randint(1, 100)
- # 保底黑
- if black_saver == 32:
- result['black'] += 1
- black_saver = 0
- # 如果同时遇到双保底的话不改变白计数器
- if platinum_saver != 9:
- platinum_saver += 1
- continue
- # 保底白
- if platinum_saver == 9:
- # 如果保底白抽到黑了不改变白计数器
- if 1 <= dice <= 3:
- result['black'] += 1
- black_saver = 0
- continue
- else:
- result['platinum'] += 1
- platinum_saver = 0
- continue
- if 1 <= dice <= 37:
- result['silver'] += 1
- black_saver += 1
- platinum_saver += 1
- elif 38 <= dice <= 87:
- result['gold'] += 1
- black_saver += 1
- platinum_saver += 1
- elif 88 <= dice <= 97:
- result['platinum'] += 1
- platinum_saver = 0
- black_saver += 1
- else:
- result['black'] += 1
- black_saver = 0
- platinum_saver += 1
- print('Silver: {silver}\nGold: {gold}\nPlatinum: {platinum}\nBlack: {black}'.format(**result))
- print('Black rate: {}'.format(result['black'] / n))
- print('Platinum rate: {}'.format(result['platinum'] / n))
- if __name__ == '__main__':
- gacha(int(sys.argv[1]))
Add Comment
Please, Sign In to add comment