diff options
| -rwxr-xr-x | challenge-078/stuart-little/lua/ch-1.lua | 13 | ||||
| -rwxr-xr-x | challenge-078/stuart-little/lua/ch-2.lua | 16 |
2 files changed, 29 insertions, 0 deletions
diff --git a/challenge-078/stuart-little/lua/ch-1.lua b/challenge-078/stuart-little/lua/ch-1.lua new file mode 100755 index 0000000000..1b76fe7c70 --- /dev/null +++ b/challenge-078/stuart-little/lua/ch-1.lua @@ -0,0 +1,13 @@ +#!/usr/bin/env lua + +-- run <script> <space-separated numbers> + +local mx = tonumber(arg[#arg]) +local out = {mx} +for i=#arg-1,1,-1 do + if tonumber(arg[i]) > mx then + mx = tonumber(arg[i]) + table.insert(out,1,mx) + end +end +print(table.unpack(out)) diff --git a/challenge-078/stuart-little/lua/ch-2.lua b/challenge-078/stuart-little/lua/ch-2.lua new file mode 100755 index 0000000000..fd09ac713c --- /dev/null +++ b/challenge-078/stuart-little/lua/ch-2.lua @@ -0,0 +1,16 @@ +#!/usr/bin/env lua + +-- run <script> <space-separated array entries, then ' - ', then space-separated rotation indices> + +local nrs = {} +while (tonumber(arg[1])) do + table.insert(nrs,tonumber(arg[1])) + table.remove(arg,1) +end +table.remove(arg,1) +for _,v in ipairs(arg) do + local vv = (v-1)%#nrs+1 + local s=table.pack(table.unpack(nrs,vv+1)) + for i=1,vv do table.insert(s,nrs[i]) end + print(table.unpack(s)) +end |
