138 lines
2.8 KiB
Python
138 lines
2.8 KiB
Python
|
|
|
|
symbol_pay_table = {
|
|
"A": {
|
|
"max_cascade": 15,
|
|
"15+": 150.0,
|
|
"14": 70.0,
|
|
"13": 35.0,
|
|
"12": 15.0,
|
|
"11": 7.5,
|
|
"10": 5.0,
|
|
"9": 2.5,
|
|
"8": 2.0,
|
|
"7": 1.75,
|
|
"6": 1.5,
|
|
"5": 1.0,
|
|
},
|
|
"B": {
|
|
"max_cascade": 15,
|
|
"15+": 100.0,
|
|
"14": 60.0,
|
|
"13": 30.0,
|
|
"12": 12.5,
|
|
"11": 6.0,
|
|
"10": 4.0,
|
|
"9": 2.0,
|
|
"8": 1.5,
|
|
"7": 1.25,
|
|
"6": 1.0,
|
|
"5": 0.75,
|
|
},
|
|
"C": {
|
|
"max_cascade": 15,
|
|
"15+": 60.0,
|
|
"14": 40.0,
|
|
"13": 20.0,
|
|
"12": 10.0,
|
|
"11": 4.5,
|
|
"10": 3.0,
|
|
"9": 1.5,
|
|
"8": 1.25,
|
|
"7": 1.0,
|
|
"6": 0.75,
|
|
"5": 0.5,
|
|
},
|
|
"D": {
|
|
"max_cascade": 15,
|
|
"15+": 40.0,
|
|
"14": 20.0,
|
|
"13": 10.0,
|
|
"12": 5.0,
|
|
"11": 3.0,
|
|
"10": 2.0,
|
|
"9": 1.25,
|
|
"8": 1.0,
|
|
"7": 0.75,
|
|
"6": 0.5,
|
|
"5": 0.4,
|
|
},
|
|
"E": {
|
|
"max_cascade": 15,
|
|
"15+": 30.0,
|
|
"14": 15.0,
|
|
"13": 8.0,
|
|
"12": 3.5,
|
|
"11": 2.5,
|
|
"10": 1.5,
|
|
"9": 1.0,
|
|
"8": 0.75,
|
|
"7": 0.5,
|
|
"6": 0.4,
|
|
"5": 0.3,
|
|
},
|
|
"F": {
|
|
"max_cascade": 15,
|
|
"15+": 25.0,
|
|
"14": 12.0,
|
|
"13": 6.0,
|
|
"12": 3.0,
|
|
"11": 2.0,
|
|
"10": 1.25,
|
|
"9": 0.75,
|
|
"8": 0.5,
|
|
"7": 0.4,
|
|
"6": 0.3,
|
|
"5": 0.25,
|
|
},
|
|
"G": {
|
|
"max_cascade": 15,
|
|
"15+": 20.0,
|
|
"14": 10.0,
|
|
"13": 5.0,
|
|
"12": 2.5,
|
|
"11": 1.5,
|
|
"10": 1.0,
|
|
"9": 0.5,
|
|
"8": 0.4,
|
|
"7": 0.3,
|
|
"6": 0.25,
|
|
"5": 0.2,
|
|
},
|
|
}
|
|
|
|
|
|
def get_symbol_pay(symbol: str, cluster_size: int) -> float:
|
|
if symbol not in symbol_pay_table:
|
|
raise ValueError(f"Unknown symbol: {symbol}")
|
|
|
|
"""根据符号和连锁大小获取赔付倍数"""
|
|
if cluster_size >= symbol_pay_table[symbol]["max_cascade"]:
|
|
return symbol_pay_table[symbol][f'{symbol_pay_table[symbol]["max_cascade"]}+']
|
|
elif str(cluster_size) in symbol_pay_table[symbol]:
|
|
return symbol_pay_table[symbol][str(cluster_size)]
|
|
else:
|
|
return 0.0
|
|
|
|
|
|
if __name__ == "__main__":
|
|
reward = set()
|
|
for symbol in symbol_pay_table:
|
|
for key in symbol_pay_table[symbol]:
|
|
if key != "max_cascade":
|
|
reward.add(symbol_pay_table[symbol][key])
|
|
reward = list(reward)
|
|
sorted_reward = sorted(reward)
|
|
print(sorted_reward)
|
|
|
|
max_score=2000
|
|
|
|
a = 0
|
|
b=0
|
|
c=0
|
|
max_a = max_score/0.2
|
|
max_b = max_score/0.25
|
|
max_c = max_score/0.3
|
|
print(f"{max_a}*{max_b}*{max_c}/1000000={max_a*max_b*max_c/1000000}")
|
|
# avaiable_reward = a*0.2 + b*0.25 + c*0.3
|