diff options
| author | Roger Bell_West <Firedrake@users.noreply.github.com> | 2022-01-10 10:58:14 +0000 |
|---|---|---|
| committer | Roger Bell_West <Firedrake@users.noreply.github.com> | 2022-01-10 10:58:14 +0000 |
| commit | 89b75091efcc8ab7ec62564a9dbe319cb0552eba (patch) | |
| tree | a07d964290c1927412d827375c28126975744653 /challenge-147/roger-bell-west/lua/ch-2.lua | |
| parent | e9411bdc7658179af3f23d3ada7970323547a7d7 (diff) | |
| download | perlweeklychallenge-club-89b75091efcc8ab7ec62564a9dbe319cb0552eba.tar.gz perlweeklychallenge-club-89b75091efcc8ab7ec62564a9dbe319cb0552eba.tar.bz2 perlweeklychallenge-club-89b75091efcc8ab7ec62564a9dbe319cb0552eba.zip | |
Solutions for challenge #147
Diffstat (limited to 'challenge-147/roger-bell-west/lua/ch-2.lua')
| -rwxr-xr-x | challenge-147/roger-bell-west/lua/ch-2.lua | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/challenge-147/roger-bell-west/lua/ch-2.lua b/challenge-147/roger-bell-west/lua/ch-2.lua new file mode 100755 index 0000000000..c46defd3d4 --- /dev/null +++ b/challenge-147/roger-bell-west/lua/ch-2.lua @@ -0,0 +1,41 @@ +#! /usr/bin/lua + +function pentagon(n) + return math.floor(n*(3*n-1)/2) +end + +function pentpair() + fpent={} + rpent={} + mx=0 + a=1 + while 1 do + while mx < a do + mx = mx + 1 + table.insert(fpent,pentagon(mx)) + rpent[fpent[mx]]=mx + end + for b = 1,a do + d=fpent[a]-fpent[b] + if d < fpent[b] then + break + end + if rpent[d] ~= nil then + s=fpent[a]+fpent[b] + while s > fpent[mx] do + mx = mx + 1 + table.insert(fpent,pentagon(mx)) + rpent[fpent[mx]]=mx + end + if rpent[s] ~= nil then + print(string.format("P(%d) + P(%d) = %d + %d = %d = P(%d)",a,b,fpent[a],fpent[b],s,rpent[s])) + print(string.format("P(%d) - P(%d) = %d - %d = %d = P(%d)",a,b,fpent[a],fpent[b],d,rpent[d])) + os.exit(0) + end + end + end + a = a + 1 + end +end + +pentpair() |
