diff options
| author | chirvasitua <stuart-little@users.noreply.github.com> | 2021-05-24 11:47:49 -0400 |
|---|---|---|
| committer | chirvasitua <stuart-little@users.noreply.github.com> | 2021-05-24 20:26:30 -0400 |
| commit | 81397c78efc7711fb79c1fa6a54f3d0e1e9c1c54 (patch) | |
| tree | d31ba6f80dcce8db7ea869db1a5b6507fca6553c | |
| parent | a2dcbbbcc3a246b0136e40aee20170a021f0b573 (diff) | |
| download | perlweeklychallenge-club-81397c78efc7711fb79c1fa6a54f3d0e1e9c1c54.tar.gz perlweeklychallenge-club-81397c78efc7711fb79c1fa6a54f3d0e1e9c1c54.tar.bz2 perlweeklychallenge-club-81397c78efc7711fb79c1fa6a54f3d0e1e9c1c54.zip | |
1st commit on 114_python
| -rwxr-xr-x | challenge-114/stuart-little/python/ch-1.py | 18 | ||||
| -rwxr-xr-x | challenge-114/stuart-little/python/ch-2.py | 14 |
2 files changed, 32 insertions, 0 deletions
diff --git a/challenge-114/stuart-little/python/ch-1.py b/challenge-114/stuart-little/python/ch-1.py new file mode 100755 index 0000000000..891693a2f5 --- /dev/null +++ b/challenge-114/stuart-little/python/ch-1.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python + +# run <script> <number> + +import sys + +nrDig = len(sys.argv[1]) + +if (sys.argv[1] == '9' * nrDig): + print(int(sys.argv[1])+2) + sys.exit() + +def doubleUp(nrDig, initHalf): + return initHalf + (initHalf[:-1][::-1] if (nrDig % 2) else initHalf[::-1]) + +initHalf = sys.argv[1][0:int((nrDig+1)/2)] + +print((doubleUp(nrDig,initHalf)) if (int(doubleUp(nrDig,initHalf)) > int(sys.argv[1])) else (doubleUp(nrDig,(str(int(initHalf)+1)))) ) diff --git a/challenge-114/stuart-little/python/ch-2.py b/challenge-114/stuart-little/python/ch-2.py new file mode 100755 index 0000000000..a88d0f2adc --- /dev/null +++ b/challenge-114/stuart-little/python/ch-2.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python + +# run <script> <number> + +import re +import sys + +binNr=f"0{int(sys.argv[1]):b}" +print(f"Initial number in base two: {binNr}") + +nxt = re.sub(r"01(1*)$", r"10\1", binNr) if (int(sys.argv[1]) % 2) else re.sub(r"01(1*)(0*)$", r"10\2\1", binNr) +print(f"Next number in base two: {nxt}") + +print(f"Next number in base two: {int(nxt, base=2)}") |
