diff options
Diffstat (limited to 'challenge-102/abigail/lua/ch-2.lua')
| -rw-r--r-- | challenge-102/abigail/lua/ch-2.lua | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/challenge-102/abigail/lua/ch-2.lua b/challenge-102/abigail/lua/ch-2.lua new file mode 100644 index 0000000000..bbeb2a13ae --- /dev/null +++ b/challenge-102/abigail/lua/ch-2.lua @@ -0,0 +1,36 @@ +#!/opt/local/bin/lua + +-- +-- See ../README.md +-- + +-- +-- Run as: lua ch-2.lua < input-file +-- + +-- +-- Working from the end of the required string backwards, we alternate +-- placing a hash, and placing a number. We place them in an array out, +-- and at the end, print out said array in reverse order. +-- +for index in io . lines () do + index = tonumber (index) + out = {} + hash = false + i = 0 + while index > 0 do + hash = not hash + i = i + 1 + if hash then + out [i] = "#" + index = index - 1 + else + out [i] = index + 1 + index = index - tostring (index + 1) : len () + end + end + for j = i, 1, -1 do + io . write (out [j]) + end + io . write ("\n") +end |
