游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5216|回复: 16

[讨论] 数值问题求算法!!!

[复制链接]

1

主题

1

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2013-3-14 15:10:59 | 显示全部楼层 |阅读模式
不罗嗦了,直接上题!
强化一件装备,每次强化消耗的金钱数为 10+2*(强化次数-1)
1强2,成功率100%
2强3,成功率50%,
3强4,成功率30%,
4强5,成功率20%。
强化只可能失败,不会掉级。
问强到5平均花费的金币数,求算法和思路...

1

主题

157

帖子

417

积分

中级会员

Rank: 3Rank: 3

积分
417
发表于 2013-3-14 16:48:47 | 显示全部楼层
本帖最后由 sgkqk8888 于 2013-3-15 10:25 编辑

我不知道专业算法怎么算,我是用个很土的方法算的

先算强化的失败率
1-2失败率是0
1-3失败率是50%=1-50%   
1-4失败率是35%=100%*50%*(1-70%)
1-5失败率是12%=100%*50%*30%*(1-20%)
1-5强化成功的概率就是3%=100%*50%*30%*20%

之后我就假设强化100次,强化到5级成功次数就是3次,1-2失败次数是0次,1-3失败次数是50次,1-4失败次数是35次,1-5失败次数是12次.
知道了次数之后,接下来要算消耗

1-2的消耗是10
1-3的消耗是10+12=22
1-4的消耗是10+12+14=36
1-5的消耗是10+12+14+16=52

所以平均消耗就=(10*0+22*50+36*35+52*(12+3))/3=1046.666

36

主题

1378

帖子

4955

积分

论坛元老

Rank: 8Rank: 8

积分
4955
发表于 2013-3-14 17:22:46 | 显示全部楼层
消耗只跟强化次数有关
强化到5 平均需要多少次 就需要多少强化费用 自己算很简单

2

主题

99

帖子

587

积分

高级会员

Rank: 4

积分
587
发表于 2013-3-14 17:57:30 | 显示全部楼层
2L不知所云,3L正解

0

主题

12

帖子

66

积分

注册会员

Rank: 2

积分
66
发表于 2013-3-15 09:43:53 | 显示全部楼层
强化费用:10 12 14 16,每级强化成功次数: 1  2   3.3333   5
乘一下 加一下 160.667

7

主题

24

帖子

235

积分

中级会员

Rank: 3Rank: 3

积分
235
发表于 2013-3-15 12:18:43 | 显示全部楼层
一共1+2+10/3+5=34/3次
等差数列,第一项是10,公差是2,共34/3项,代入等差数列求和公式
S = n*a1 + n * (n - 1) * d / 2
n = 34/3
a1 = 10
d = 2
得S = 2074/9

0

主题

5

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2013-3-18 17:20:11 | 显示全部楼层
<script>
var am=0.001;//原武器价值,取极小值近似忽略不计
var mji;//每级总花费
var rate=[1,0.5,0.3,0.2,0.1];//几率数组
function allmoney(ji){ //ji为升级次数
if (ji==0)  {return am;}
  else  {
  mji=(allmoney(ji-1)+10+2*(ji-1))/rate[ji-1]; return mji;
  }
}
allmoney(4);
alert (mji);
</script>
递归完美解决。。。NND,一级十块,二级,44,三级200,四级1K,五级(按0.1的比率)W+楼主武器开光很坑人啊。

1

主题

15

帖子

61

积分

注册会员

Rank: 2

积分
61
发表于 2013-3-18 18:40:40 | 显示全部楼层
本来看到题目就觉得太简单不想做的,突然看到2楼与7楼做的这么复杂做的这么复杂还是一致的结果,就想了想。
看了7楼的js代码,发现2楼7楼他们都把题意理解成了:强化失败武器会坏掉,要重新拿把新的从1强化起,所以他们强到5单次的强化价格只有10,12,14,16四种情况.

可能很多策划不懂怎么运行JS代码,就顺便提下:创建个文本,把代码拷贝进去,保存退出;把该文本重命名将后缀txt换成html;双击打开该文件就会自动运行了。

0

主题

5

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2013-3-18 19:34:47 | 显示全部楼层
楼上受教了,我是新手。问题没看仔细,am其实可以取零。老是想着数值,忘了零也是个数了。。武器不坏的情况应该要稍改一下代码。。。。。明天试试看

0

主题

5

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2013-3-18 19:35:52 | 显示全部楼层
问题是,哪里复杂了。。。。代码很简单啊!!!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-27 19:57

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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