add gs
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
--!nocheck
|
||||
|
||||
arg0,arg1 = ...
|
||||
|
||||
-- 8 2-input functions
|
||||
local function x1(a, b) return a + b end
|
||||
local function x2(a, b) return a - b end
|
||||
local function x3(a, b) return b - a end
|
||||
local function x4(a, b) return tonumber(tostring(b%1000) .. tostring(math.abs(a%1000))) end
|
||||
local function x5(a, b) return tonumber(tostring(b%1337) .. tostring(math.abs(a%1337))) end
|
||||
local function x6(a, b) return (a % 1000) * (b % 1000) end
|
||||
local function x7(a, b) return (a % 1337) * (b % 1337) end
|
||||
local function x8(a, b) return x6(x1(a,b),x2(a,b)) end
|
||||
|
||||
-- shuffle list to ensure code must emulate our RNG
|
||||
local sh = {1,2,3,4,5,6,7,8}
|
||||
local r = Random.new(5)
|
||||
for i = 1,32 do
|
||||
local j = r:NextInteger(1,8)
|
||||
local k = r:NextInteger(1,8)
|
||||
local t = sh[j]
|
||||
sh[j] = sh[k]
|
||||
sh[k] = t
|
||||
end
|
||||
local bf = {}
|
||||
bf[sh[1]] = x1
|
||||
bf[sh[2]] = x2
|
||||
bf[sh[3]] = x3
|
||||
bf[sh[4]] = x4
|
||||
bf[sh[5]] = x5
|
||||
bf[sh[6]] = x6
|
||||
bf[sh[7]] = x7
|
||||
bf[sh[8]] = x8
|
||||
|
||||
local function x9(a, b)
|
||||
local acc = 393
|
||||
local cnt = 1
|
||||
-- create and iterate over table in a way that iteration order matters.
|
||||
for i = 1, 16 do
|
||||
local em = (math.abs(b+acc+cnt) % 8) + 1
|
||||
local f = bf[em]
|
||||
acc = (acc + f(acc+a, b)) % 10000000
|
||||
cnt = cnt + 1
|
||||
end
|
||||
return acc
|
||||
end
|
||||
return x9(arg0,arg1)
|
||||
|
||||
Reference in New Issue
Block a user