def mtg_dues(cost, total_packs, player_count, opened_packs=0, players_with_packs=0, packs_per_draft=3, prize_tiers=3): cost = float(cost) cost_per_pack = cost / total_packs cost_per_draft = cost_per_pack * packs_per_draft prize_packs = (total_packs - opened_packs) - ((player_count - players_with_packs) * packs_per_draft) prize_pack_dues = (prize_packs * cost_per_pack) / player_count prize_tier_modifier = sum(range(1, prize_tiers + 1)) prize_modifier = prize_packs / prize_tier_modifier additional_packs = prize_packs % prize_tier_modifier prize_list = [0] * prize_tiers for i, pack_count in enumerate(reversed(range(1, prize_tiers + 1))): prize_list[i] = prize_modifier * pack_count if i == 0: prize_list[i] += additional_packs print("Total cost: ${:.2f}".format(cost)) print("Number of packs: {}".format(total_packs)) print("Cost per pack: ${:.2f}".format(cost_per_pack)) print("Cost per draft: ${:.2f}".format(cost_per_draft)) print("Number of prize packs: {}".format(prize_packs)) print("Prize pack dues (per player): ${:.2f}".format(prize_pack_dues)) print('If you brought {} packs, you owe ${:.2f} for the prize pool.'.format(packs_per_draft, prize_pack_dues)) print( 'If need {} packs, you owe ${:.2f} for the packs + ${:.2f} for the prize pool. Total of ${:.2f}'.format( packs_per_draft, cost_per_draft, prize_pack_dues, cost_per_draft + prize_pack_dues ) ) print 'Recommended prize pools: ', prize_list mtg_dues(176.52, 72, 10, opened_packs=5, players_with_packs=2, packs_per_draft=3, prize_tiers=4)
Run
Reset
Share
Import
Link
Embed
Language▼
English
中文
Python Fiddle
Python Cloud IDE
Follow @python_fiddle
Browser Version Not Supported
Due to Python Fiddle's reliance on advanced JavaScript techniques, older browsers might have problems running it correctly. Please download the latest version of your favourite browser.
Chrome 10+
Firefox 4+
Safari 5+
IE 10+
Let me try anyway!
url:
Go
Python Snippet
Stackoverflow Question