From 3531cc83e5609d9a827b954b4bb017bd1124ccbc Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Sun, 25 Apr 2021 03:20:59 +0100 Subject: - Added guest contributions by Laurent Rosenfeld. --- challenge-109/laurent-rosenfeld/lua/ch-2.lua | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 challenge-109/laurent-rosenfeld/lua/ch-2.lua (limited to 'challenge-109/laurent-rosenfeld/lua/ch-2.lua') diff --git a/challenge-109/laurent-rosenfeld/lua/ch-2.lua b/challenge-109/laurent-rosenfeld/lua/ch-2.lua new file mode 100644 index 0000000000..e972de6a62 --- /dev/null +++ b/challenge-109/laurent-rosenfeld/lua/ch-2.lua @@ -0,0 +1,20 @@ +local function check_square (p) + sum = p[1] + p[2] + return p[2] + p[3] + p[4] == sum and + p[4] + p[5] + p[6] == sum and + p[6] + p[7] == sum +end + +local function permute(perm, n) + if n == 0 and check_square(perm) then + print( table.concat(perm, ' ') ) + else + for i = 1, n do + perm[i], perm[n] = perm[n], perm[i] + permute(perm, n - 1) + perm[i], perm[n] = perm[n], perm[i] + end + end +end + +permute({1,2,3,4,5,6,7}, 7) -- cgit