Nw BBS 壬天堂世界

 找回密码
 注册
搜索
热搜: 资料集合
查看: 3587|回复: 21
收起左侧

【求助】求数学帝算一些……排列组合之类的?

[复制链接]
发表于 2011-5-31 16:52:11 | 显示全部楼层 |阅读模式
在玩无双大蛇,然后在直接改内存调武器。

武器有14种技能,然后在内存里,01代表炎 02代表冰  03则代表炎+冰

04代表雷  05代表炎+雷  06代表冰+雷……

如此类推。那= =

如何可以较快地算出想要的技能组合对应数值呢……

下面是单个技能的列表

01炎
02冰
04雷
08阳
16斩
32空←这个是个没有的技能= =但是确实占了内存的位置,算是一个小BUG吧
64吸生
128吸活
256破天
512勇猛
1024旋风
2048分身
4096神速
8192极意
16384背水

就是问:如果我要神速+极意+破天,那对应的是多少?
回复

使用道具 举报

发表于 2011-5-31 17:25:23 | 显示全部楼层
诶...不是直接加起来么
回复

使用道具 举报

发表于 2011-5-31 17:30:23 | 显示全部楼层
这不是二进制么= =
回复

使用道具 举报

 楼主| 发表于 2011-5-31 17:30:45 | 显示全部楼层
诶...不是直接加起来么
利希德 发表于 2011-5-31 17:25


怎么会是= =

因为我理解不了真正的算法所以也答不了,但是不是直接加这么简单吧=L =
回复

使用道具 举报

 楼主| 发表于 2011-5-31 17:31:11 | 显示全部楼层
这不是二进制么= =
Tormentor 发表于 2011-5-31 17:30


话说我也不知道为什么刚好是2的N次方

数学都忘了- -
回复

使用道具 举报

发表于 2011-5-31 17:34:15 | 显示全部楼层
你自己都说了 05代表炎+雷  06代表冰+雷
不是直接相加是什么- -
回复

使用道具 举报

发表于 2011-5-31 17:35:01 | 显示全部楼层
01代表炎 02代表冰  03则代表炎+冰  04代表雷  05代表炎+雷  06代表冰+雷……
但是这个确实是直接加的吧...07代表炎+冰+雷么?
回复

使用道具 举报

发表于 2011-5-31 17:37:25 | 显示全部楼层
就是用二进制表示数嘛11000100000000= =
回复

使用道具 举报

 楼主| 发表于 2011-5-31 17:45:28 | 显示全部楼层
01代表炎 02代表冰  03则代表炎+冰  04代表雷  05代表炎+雷  06代表冰+雷……
但是这个确实是直接加的吧...07代表炎+冰+雷么?
利希德 发表于 2011-5-31 17:35


这么说来是不是和以前那个准备多少零钱可以应付各种找钱情况的题类似

超萌我要十进制= =
回复

使用道具 举报

发表于 2011-5-31 17:47:02 | 显示全部楼层
差不多是那类问题吧,主要还是用2的N次方来方便用1个数字判断好几个能力
回复

使用道具 举报

发表于 2011-5-31 17:48:06 | 显示全部楼层
这么说来是不是和以前那个准备多少零钱可以应付各种找钱情况的题类似

超萌我要十进制= =
玖路義理 发表于 2011-5-31 17:45

10进制你妥妥的废掉
回复

使用道具 举报

 楼主| 发表于 2011-5-31 17:50:03 | 显示全部楼层
10进制你妥妥的废掉
Regua 发表于 2011-5-31 17:48


那16进制吧- -我最终还是要输入16进制或者10进制的……
回复

使用道具 举报

发表于 2011-5-31 17:51:16 | 显示全部楼层
十进制直接加起来嘛
回复

使用道具 举报

发表于 2011-6-2 19:45:35 | 显示全部楼层
这是二进制~16384=2^14
回复

使用道具 举报

发表于 2011-6-2 21:07:30 | 显示全部楼层
顶一顶,水一水
回复

使用道具 举报

发表于 2011-6-3 09:19:02 | 显示全部楼层
本帖最后由 骨碌骨碌刺猬 于 2011-6-3 09:33 编辑

算错了,重新算。。。稍等
01炎           00
02冰           01
04雷           10
08阳           100
16斩           1000
32空←这个是个没有的技能= =但是确实占了内存的位置,算是一个小BUG吧    10000
64吸生          100000
128吸活        1000000
256破天        10000000
512勇猛        100000000
1024旋风      1000000000
2048分身      10000000000
4096神速      100000000000
8192极意      1000000000000
16384背水    10000000000000

之所以都是2的倍数,是因为在2进制码里好算。对应的地方是1.。。就是有这个效果

神速+极意+破天
256破天                10000000
4096神速       100000000000
8192极意      1000000000000

最后编码是     1100010000000

自己换算会10进制

2^7+2^11+2^12=?
回复

使用道具 举报

发表于 2011-6-3 09:32:11 | 显示全部楼层
不知道我算的对不对。。。你自己算算
回复

使用道具 举报

发表于 2011-6-3 10:50:27 | 显示全部楼层
不知道我算的对不对。。。你自己算算
骨碌骨碌刺猬 发表于 2011-6-3 09:32


太久没做这方面的东西完全退化了=L =原理我已经明白了
回复

使用道具 举报

发表于 2011-6-4 07:39:08 | 显示全部楼层
用2的方来计数的本意就是为了方便查看包含了哪个参数

数组起始应该是从1开始而不是0
从右起每一位数上存在一个1则表示数序最低开始的参数是存在的
即使假设冰+雷就是 110

要算的时候就算是编程,要将一个合集分解成参数或将参数合并成合集都是简单的加减法而已
回复

使用道具 举报

发表于 2011-6-6 12:48:41 | 显示全部楼层
﹃_﹃〣 求解爲啥從1開始
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|Nw壬天堂世界 ( 京ICP备05022083号-1 京公网安备11010202001397号 )

GMT+8, 2024-11-15 12:35 , Processed in 0.029013 second(s), 3 queries , Redis On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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