[十万火急] 数学帝过来!!!!!!!求助公式!

2014-12-23 16:31:48 +08:00
 MaiCong

给出数值对应关系如下:
x = y n m
1 = 1 1 0
2 = 2 1 1
3 = 3 2 1
4 = 4 1 2
5 = 6 2 2
6 = 5 3 2
7 = 7 4 2
8 = 8 1 3
9 = 12 2 3
10 = 9 3 3
11 = 13 4 3
12 = 10 5 3
13 = 14 6 3
14 = 11 7 3
15 = 15 8 3
16 = 16 1 4
17 = 24 2 4
18 = 17 3 4
19 = 25 4 4
20 = 18 5 4
21 = 26 6 4
22 = 19 7 4
23 = 27 8 4
24 = 20 9 4
25 = 28 10 4
请以x、n、m为参数列出公式:
y = ?

知乎: http://www.zhihu.com/question/27216591

2519 次点击
所在节点    问与答
4 条回复
silverzhao
2014-12-23 17:52:24 +08:00
目前可以看出,m = [log2 x], n = x+1-2^m.

y 的关系还没有看出来。
silverzhao
2014-12-23 18:15:20 +08:00
好了,算出来了:

当 x 为奇数时,y = 2^m + (x-1)/2;
当 x 为偶数时,y = 2^(m-1) + x/2。
silverzhao
2014-12-23 18:21:17 +08:00
再看了下,可以归并成一个式子:

y = 2^(m-1+(x&1)) + [x/2],

其中,[x] 表示对 x 向下取整。
Valyrian
2014-12-23 18:22:32 +08:00
我算的:
mod = 2**n - 1
offset = 2**(n-1) - 1
y = x+(x*offset)%mod-offset
除了第一行div by zero其他都满足。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/156051

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX