diff options
| author | Ysmael Ebreo <Ysmael.Ebreo@latticesemi.com> | 2020-04-19 19:24:59 +0800 |
|---|---|---|
| committer | Ysmael Ebreo <Ysmael.Ebreo@latticesemi.com> | 2020-04-19 19:24:59 +0800 |
| commit | 78f87ae8a8a82595fe438f0033c2dcb9e88a4037 (patch) | |
| tree | 66fd100db5ee175de9213c1b17565fd7ce4f45df /challenge-055 | |
| parent | dc4ba0840d954526231732abc8d517dc657d1123 (diff) | |
| download | perlweeklychallenge-club-78f87ae8a8a82595fe438f0033c2dcb9e88a4037.tar.gz perlweeklychallenge-club-78f87ae8a8a82595fe438f0033c2dcb9e88a4037.tar.bz2 perlweeklychallenge-club-78f87ae8a8a82595fe438f0033c2dcb9e88a4037.zip | |
perl solution ch#56
Diffstat (limited to 'challenge-055')
| -rw-r--r-- | challenge-055/yet-ebreo/python/ch-2a.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/challenge-055/yet-ebreo/python/ch-2a.py b/challenge-055/yet-ebreo/python/ch-2a.py new file mode 100644 index 0000000000..15b537d506 --- /dev/null +++ b/challenge-055/yet-ebreo/python/ch-2a.py @@ -0,0 +1,35 @@ +import sys +import time + +start_time = time.time() + +if len(sys.argv) < 2: + narray = [1, 2, 3, 4] +else: + narray = list(map(int, sys.argv[1:])) + +narray.sort() +dict = {} + +def wave(a,l,r): + + if (l==r): + flag = 1 + for e in list(range(1,len(a))): + flag &= (a[e] >= a[e-1], a[e] <= a[e-1])[e % 2 > 0] + if not flag: + break + + if flag > 0: + hold = str(a) + if (not hold in dict): + print (hold) + dict[hold] = 1 + else: + for i in list(range(l,r+1)): + a[l],a[i] = a[i],a[l] + wave(a,l+1,r) + a[l],a[i] = a[i],a[l] + +wave(narray,0,len(narray)-1) +print("Execution Time: %s seconds" % (time.time() - start_time))
\ No newline at end of file |
