游戏王残局简化版

Diff
Login

Diff

Differences From Artifact [68283b6180]:

To Artifact [69bf46dcf7]:


8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
  end
--~ 卡对
function d.卡对消重(u1, u1_0)
  return u1_0.name, true
  end
--~ 卡对排
function d.荐名(u1_0)
  local k1, k2
  local h1_0
  --~ 攻击力排
  h1_0 = 历排库.历排(u1_0, 筛卡库.筛怪兽卡)
  h1_0 = 历排库.历排(h1_0, 筛卡库.筛攻击力)
  if h1_0[1] then
    --~ 攻击力均差阶
    k1 = 排算库.均差(h1_0)
    if k1 > 0 then
      --~ 补值
      k2 = 数库.指数(100, 基算库.除法(k1, 300))
      k1 = 基算库.除法(基算库.加法(k1, k2), 100)
      if k1 > 1 then
        k1 = 数库.指数次(k1, 2)
        return 数库.向下取整(k1)
      else
        return 0
        end
    else
      return 0
      end
  else
    return 0
    end
  end
--~ 卡对排
function d.荐名(u1_0)
  local k1
  --~ 名
  k1 = d.荐字段名(u1_0)
  if k1 then
  else
    k1 = d.荐卡名(u1_0)
    end
  if k1 then
    return k1
  else
    return "请便"
    end
  end
--~ 卡对排
function d.荐卡名(u1_0)
  local h1_0
  --~ 卡名排
  h1_0 = 历排库.历排(u1_0, d.取卡名)
  return 历排取一库.筛最短文(h1_0)
  end
--~ 卡对
function d.取卡名(u1_0)
  return u1_0.name
  end
--~ 卡对排
function d.取字段对(u1_0)
  local k1, k2, k3, k4
  local h1_0
  --~ 字段对
  h1_0 = {}
  for u1 = 1, #u1_0 do
    --~ 字段数
    k1 = 字节库.to_uint64(u1_0[u1].setcode)
    if k1 < 1 then
    else
      if k1 > 0xffffFFFFffff then
        k1 = k1 - 1
      else
        for u2 = 1, 11112222 do
          if k1 < 1 then
            break
          else
            --~ 大字段号
            k2 = 位算库.位和(k1, 0xffff)
            k1 = 位算库.位右移(k1, 基算库.乘法(4, 4))
            --~ 字段名
            k3 = 字段名对[tonumber(k2)]
            if k3 then
              if h1_0[k3] then
                h1_0[k3] = 基算库.加法(h1_0[k3], 1)
              else
                h1_0[k3] = 1
                end
              if k2 > 0xfff then
                --~ 小字段号
                k4 = 位算库.位和(k2, 0xfff)
                k3 = 字段名对[tonumber(k4)]
                if k3 then
                  if h1_0[k3] then
                    h1_0[k3] = 基算库.加法(h1_0[k3], 1)
                  else
                    h1_0[k3] = 1
                    end
                else
                  end
              else
                end
            else
              end
            end
          end
        end
      end
    end
  return h1_0
  end
--~ 卡对排
function d.荐字段名(u1_0)
  local k1
  local h1_0
  --~ 字段对
  h1_0 = d.取字段对(u1_0)
  --~ 最大的字段名数量
  _, k1 = 历对取一库.筛最大值(h1_0)
  --~ 最高频字段名对
  h2_0 = 历对库.历对(h1_0, 历对库.全等筛值, k1)
  return 历对取一库.筛最短键(h2_0)
  end







|






|
|

|
|
|
|
|












|

|
|

|

|
|

















|





|
|

|
|


|



|
|

|
|
|
|

|

|

|
|
|
|
|

|
















|




|

|


8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
  end
--~ 卡对
function d.卡对消重(u1, u1_0)
  return u1_0.name, true
  end
--~ 卡对排
function d.荐名(u1_0)
  local h1, h2
  local h1_0
  --~ 攻击力排
  h1_0 = 历排库.历排(u1_0, 筛卡库.筛怪兽卡)
  h1_0 = 历排库.历排(h1_0, 筛卡库.筛攻击力)
  if h1_0[1] then
    --~ 攻击力均差阶
    h1 = 排算库.均差(h1_0)
    if h1 > 0 then
      --~ 补值
      h2 = 数库.指数(100, 基算库.除法(h1, 300))
      h1 = 基算库.除法(基算库.加法(h1, h2), 100)
      if h1 > 1 then
        h1 = 数库.指数次(h1, 2)
        return 数库.向下取整(h1)
      else
        return 0
        end
    else
      return 0
      end
  else
    return 0
    end
  end
--~ 卡对排
function d.荐名(u1_0)
  local h1
  --~ 名
  h1 = d.荐字段名(u1_0)
  if h1 then
  else
    h1 = d.荐卡名(u1_0)
    end
  if h1 then
    return h1
  else
    return "请便"
    end
  end
--~ 卡对排
function d.荐卡名(u1_0)
  local h1_0
  --~ 卡名排
  h1_0 = 历排库.历排(u1_0, d.取卡名)
  return 历排取一库.筛最短文(h1_0)
  end
--~ 卡对
function d.取卡名(u1_0)
  return u1_0.name
  end
--~ 卡对排
function d.取字段对(u1_0)
  local h1, h2, h3, h4
  local h1_0
  --~ 字段对
  h1_0 = {}
  for u1 = 1, #u1_0 do
    --~ 字段数
    h1 = 字节库.to_uint64(u1_0[u1].setcode)
    if h1 < 1 then
    else
      if h1 > 0xffffFFFFffff then
        h1 = h1 - 1
      else
        for u2 = 1, 11112222 do
          if h1 < 1 then
            break
          else
            --~ 大字段号
            h2 = 位算库.位和(h1, 0xffff)
            h1 = 位算库.位右移(h1, 基算库.乘法(4, 4))
            --~ 字段名
            h3 = 字段名对[tonumber(h2)]
            if h3 then
              if h1_0[h3] then
                h1_0[h3] = 基算库.加法(h1_0[h3], 1)
              else
                h1_0[h3] = 1
                end
              if h2 > 0xfff then
                --~ 小字段号
                h4 = 位算库.位和(h2, 0xfff)
                h3 = 字段名对[tonumber(h4)]
                if h3 then
                  if h1_0[h3] then
                    h1_0[h3] = 基算库.加法(h1_0[h3], 1)
                  else
                    h1_0[h3] = 1
                    end
                else
                  end
              else
                end
            else
              end
            end
          end
        end
      end
    end
  return h1_0
  end
--~ 卡对排
function d.荐字段名(u1_0)
  local h1
  local h1_0
  --~ 字段对
  h1_0 = d.取字段对(u1_0)
  --~ 最大的字段名数量
  _, h1 = 历对取一库.筛最大值(h1_0)
  --~ 最高频字段名对
  h2_0 = 历对库.历对(h1_0, 历对库.全等筛值, h1)
  return 历对取一库.筛最短键(h2_0)
  end