由五笔编码联想到的字母排序问题z共26个字母,以1~4个组合,按字母顺序排序,如下所示:aaaaaa

发布时间:2021-02-21 09:31:13

由五笔编码联想到的字母排序问题z共26个字母,以1~4个组合,按字母顺序排序,如下所示:aaaaaaaaaaaaabaaac……aaazaabaabaaabc……aazzababaabaa……azzzbbabaabaaa……zzzz求其中任一组合的序号,比如,xyzd是第几个?最好用式子表达出来,也可以用程序代码.

网友回答

总的来说就是一个进制转化,外加一些细节处理.我们先看个类似的例子:
000000000000010002……0009001——进1位的时候会多1个数出来
0010……0019……009901010——进2位的时候会多2个数出来
01000999110100——进3位的时候会多3个数出来
1000——其实这里可以从0999转过来的,这是和单纯进制的相似处
1001……现在有点感觉了吗?
现在来算xyzd,把它看成26进制的数来计算,a表示0,z表示25,26进1,xyzd记作(23)(24)(25)(3),以及额外产生的数,这些数正好包括:23,00~(23)(24),000~(23)(24)(25)计算:
(23x26^3+24x26^2+25x26+3+1)+(23+1)+(23x26+24+1)+(23x26^2+24x26+25+1)
欢迎来讨论======以下答案可供参考======
供参考答案1:
好难供参考答案2:
这是极点五笔码表的格式,至于哪个代码排第几个,这是不固定的,码表大的,排序靠后;码表小的,排序靠前。就是算你找出来了,也没什么意义的。
以上问题属网友观点,不代表本站立场,仅供参考!