1
2
3
4
5
6
7
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
|
1
2
3
4
5
6
7
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
|
-
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
+
-
-
+
+
|
local s = {}
-- 启
--~ 排
--~ 能
function s.历排(u1_0, o1)
function s.历排(u1_0, u1)
local k1
for o2 = 1, #u1_0 do
for u2 = 1, #u1_0 do
--~ 值
k1 = s.模(k1, u1_0[o2], o1)
k1 = s.模(k1, u1_0[u2], u1)
end
return k1
end
-- 模
--~ 值
--~ 排中值
function s.模(o1, o2, o3)
if o1 == nil then
return o2
elseif o3(o1, o2) then
return o2
function s.模(u1, u2, o3)
if u1 == nil then
return u2
elseif o3(u1, u2) then
return u2
else
return o1
return u1
end
end
-- 最短
--~ 最短文
--~ 值
function s._筛最短文(o1, o2)
if #o1 > #o2 then
function s._筛最短文(u1, u2)
if #u1 > #u2 then
return true
end
end
--~ 排
function s.筛最短文(u1_0)
return s.历排(u1_0, s._筛最短文)
end
|