游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2008|回复: 0

[原创] 批量使用道具的最优选择算法

[复制链接]

10

主题

81

帖子

143

积分

注册会员

Rank: 2

积分
143
QQ
发表于 2018-10-12 16:01:53 | 显示全部楼层 |阅读模式
在很多游戏中都会提供给玩家批量使用道具的需求。
策略游戏中批量使用加速道具。



如卡牌游戏中批量使用经验道具。

IMG_3774.PNG
但是市面上大部分游戏的一键使用只能支持到批量使用一种道具,玩家要自行选择先用哪个后用哪个。
在刀塔传奇中选择的算法则是先把小经验道具用完,再选择大经验道具。这样势必在某些情况下会产生浪费。
比如升到目标等级需要560经验。
此时我拥有10经验的道具和100经验的道具各8个。
按照最优算法,应该是使用6个10经验道具和5个100经验道具。
但是按照刀塔传奇的算法,会使用8个10经验道具和5个100经验道具。

于是我们对此算法进行了优化。
用excel计算过程在附件中。
用语言描述该过程是这样的:
1、假设是一个用现金买东西的过程,卖家不找零。
2、先把所有钱掏出来。
3、然后从最高面值的往回拿,比如拿N+1张就不够付清货款,则就拿回N张。
4、然后往回拿第二高面值的,拿回数量同理。
5、直到把最小面值的也计算过一次为止。
6、剩余的没有拿回的钞票就是应付款的最优金额解。



王者

王者

省钱算法.xlsx

10.8 KB, 下载次数: 47

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-3-29 23:27

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表