不思议迷宫吧 关注:275,960贴子:3,469,198

【布达拉宫学院】如何最快解锁所有装备共鸣220种组合(整理)

只看楼主收藏回复

太长不看版: 游戏攻略本体220种组合在文末,不想看正文可以直接跳过
以下正文


IP属地:河南来自Android客户端1楼2019-08-11 16:55回复
    ——编码方法: 格雷码——
    考古家,炼金师和游戏达人来到了布达拉宫,啊不,布拉卡达学院。考古家经过调查发现,这里的学者会在装备上镶嵌原石,镶嵌满特定的原石组合可以发生共鸣。
    每个装备上有3个镶嵌孔,原石有10种,不是所有的组合都能发生共鸣。现在他们想通过一个一个试的方法遍历所有可能的共鸣,那么如何才能使更换原石的次数最小?
    炼金师说,这其实是个数学问题。我们不妨先用0~9十个数给十种原石编号。显然,从{000}到{999}一共有一千种组合,每种变化组合我们都需要更换3块原石中的一到三块。假如每次都更换三块原石,我们得尝试三千次。假如我们能够不重复地遍历这一千种组合,且每次只更换一块原石,那么更换一千次原石够了,显然这时更换次数最小。
    当然,直接按照0,1,2,3,4...每次加一的顺序是行不通的,因为在进位时需要更换多次原石。例如从{009}到{010}需要更换十位和个位两块原石,从{2,9,9}到{3,0,0}需要换三块。
    但是,有一种数字编码可以满足“每次加一时只改变一位数字”,那就是(十进制版的)格雷码!(十进制的)格雷码是这样构造的,假如一个数字十进制表示为
    abc,(即100a+10b十c),
    那么首先将它右移一位并舍去个位,即
    0ab,
    然后两数每一位上的数字分别相减即得到格雷码:
    a(b-a)(c-b),
    例如129的格雷码是1(2-1)(9-2)为117,而130的格雷码是1(3-1)(0-3)为127。注意当出现0-3这种“不够减的情况,我们凭空借它一位变成10-3即可,或者说对-3关于10取余。
    我们不妨检验一下,91到110的格雷码分别为
    91~100: 92,93,94,95,96,97,98,99,90,190;
    101~110: 191,192,193,194,195,196,197,198,199,189。


    IP属地:河南来自Android客户端2楼2019-08-11 16:56
    收起回复
      ——其实前面的内容并没有什么卵用——
      于是,炼金师按照格雷码尝试了起来......
      (一百年后)
      炼金师尝试到九百多次时,发现事情有些不对。
      他发现{819}和、{918}和{981}的共鸣结果是相同的。
      于是他又尝试了{198}、{189}和(891}也是相同的,这说明了一个可怕的规律:
      原石之间的共鸣与镶嵌孔中的顺序无关!
      所以实际可能的共鸣组合数要比1000小得多,那么具体是多少种呢?我们可以分3类:
      a类是三颗石头各不相同,共有C[10,3]=120种; b类是只有两颗石头相同,共有A[10,2]=90种; c类是三颗石头均相同,共有10种。
      所以一共有120+90+10=220种共鸣组合!即使每次更换3块原石,也只需要尝试660次即可!
      对于这220种组合,格雷码是不适用的。要想只更换220块原石遍历220种组合,这变成了一个图论问题。假如把每种组合看做一个节点,只相差一块原石的组合连起来,那么只要我们求出这个图中的Hamilton路(环)就行了!


      IP属地:河南来自Android客户端3楼2019-08-11 16:58
      收起回复


        IP属地:江西来自Android客户端4楼2019-08-11 17:00
        回复
          设这220种组合的集合为n,连接成的图为g,用蓝、黄、红给a、b、c三种节点这个图着色,那么这个g长成这样子:
          n=DeleteDuplicates[Sort/@Tuples[Range[0,9],3]];
          g=AdjacencyGraph[SparseArray[{x_,y_}/;Norm[Min/@Apply[Count,Table[{i,j},{j,Range[0,9]},{i,n[[#]]&/@{x,y}}],{2}],1]==2->1,{220,220}],VertexStyle->(#->{Red,Yellow,Blue}[[Length[Union[n[[#]]]]]]&)/@Range[220],EdgeStyle->RGBColor[.1,.4,.7,.3]]


          IP属地:河南来自Android客户端5楼2019-08-11 17:01
          回复
            ——然而上面这些仍然没什么卵用——
            一共有9件装备,每件装备都有220种组合,炼金师必须尝试9成220等于1980次。
            但是游戏达人有不同的看法,因为他已经找到了游戏攻略,这九件装备一共也只有220种共鸣,最差也只需要更换660块原石就能解锁所有共鸣组合了!
            下面是所有220种共鸣组合的具体组合:





            IP属地:河南来自Android客户端7楼2019-08-11 17:07
            回复






              IP属地:河南来自Android客户端8楼2019-08-11 17:12
              回复
                ps. 游戏里有一种叫做炼金笔记的道具,可以直接解锁一种共鸣组合; 但是,直接在装备上手动镶嵌原石也是可以解锁共鸣组合的。解锁全部共鸣组合后,掉落炼金笔记会变成掉落中阶原石,所以尽快解锁所有组合不是完全无利可图的。


                IP属地:河南来自Android客户端9楼2019-08-11 17:13
                回复
                  我第6楼哪儿去了?


                  IP属地:河南来自Android客户端10楼2019-08-11 17:20
                  回复
                    补上:
                    然后求出g的一个哈密顿环为
                    n[[#]]&/@(c=FindHamiltonianCycle[g])[[1,All,1]]
                    好了,我们只要按照这个顺序,就能只更换220次遍历所有组合了!是不是很简单!


                    IP属地:河南来自Android客户端11楼2019-08-11 17:23
                    收起回复
                      大。。。。大佬
                      我觉得是官方小号自己爆料,楼下怎么看


                      IP属地:陕西来自Android客户端12楼2019-08-11 17:26
                      回复
                        怎么看得问元芳,反正我看着就慌


                        IP属地:广东来自Android客户端13楼2019-08-11 17:30
                        回复
                          大。。。。大佬你好,打扰了


                          IP属地:广东14楼2019-08-11 17:36
                          回复
                            我选择上课


                            IP属地:湖北来自Android客户端15楼2019-08-11 17:37
                            回复
                              🔥钳留馅


                              IP属地:河北来自Android客户端17楼2019-08-11 18:56
                              回复