aboutsummaryrefslogtreecommitdiff
path: root/challenge-018/orestis-zekai/python
diff options
context:
space:
mode:
authordrclaw1394 <drclaw@mac.com>2019-07-31 16:41:20 +1000
committerGitHub <noreply@github.com>2019-07-31 16:41:20 +1000
commitfd602cb30546cf8e27c913cf22ccd72ffa2c8c00 (patch)
treeaa8c4ef405055daafaa57f0117f02a6362ec27b9 /challenge-018/orestis-zekai/python
parent308d2c5a19d93acf77a9c65e0751044ed0230ae0 (diff)
parent1dbcabd8e08dd98a40fe42ee3ce63e5755cdaaef (diff)
downloadperlweeklychallenge-club-fd602cb30546cf8e27c913cf22ccd72ffa2c8c00.tar.gz
perlweeklychallenge-club-fd602cb30546cf8e27c913cf22ccd72ffa2c8c00.tar.bz2
perlweeklychallenge-club-fd602cb30546cf8e27c913cf22ccd72ffa2c8c00.zip
Merge pull request #18 from manwar/master
Update for w19
Diffstat (limited to 'challenge-018/orestis-zekai/python')
-rw-r--r--challenge-018/orestis-zekai/python/ch-1.py18
-rw-r--r--challenge-018/orestis-zekai/python/ch-2.py55
2 files changed, 73 insertions, 0 deletions
diff --git a/challenge-018/orestis-zekai/python/ch-1.py b/challenge-018/orestis-zekai/python/ch-1.py
new file mode 100644
index 0000000000..e997db9e74
--- /dev/null
+++ b/challenge-018/orestis-zekai/python/ch-1.py
@@ -0,0 +1,18 @@
+# Longest common substring
+
+string1 = "ABABC"
+string2 = "BABCA"
+
+max_substring = ""
+max_length = -1
+
+
+for i in range(0, len(string1)+1):
+ for j in range(0, len(string1)+1):
+ if (string1[i:j] in string2) and len(string1[i:j]) > max_length:
+ max_length = len(string1[i:j])
+ max_substring = string1[i:j]
+
+
+print('The longest substring is: ' + max_substring)
+print('The length of the longest substring is: ' + str(max_length)) \ No newline at end of file
diff --git a/challenge-018/orestis-zekai/python/ch-2.py b/challenge-018/orestis-zekai/python/ch-2.py
new file mode 100644
index 0000000000..ff36bfd529
--- /dev/null
+++ b/challenge-018/orestis-zekai/python/ch-2.py
@@ -0,0 +1,55 @@
+import time
+import math
+
+def is_empty(queue):
+ if not queue:
+ print("Queue is empty")
+ else:
+ print("Queue is not empty")
+
+def insert_with_priority(queue):
+ print('Enter the priority of the element you want to insert')
+ priority = int(input())
+ timestamp = time.time()
+
+ queue.append([priority, timestamp])
+ return queue
+
+def pull_highest_prority_element(queue):
+ queue.remove(max(queue))
+ return queue
+
+available_choices = [1, 2, 3, 4]
+queue = []
+
+while 1:
+ print('\n\n')
+ print('================================')
+ print('Current status of queue')
+ if not queue:
+ print(queue)
+ else:
+ for i in range(0, len(queue)):
+ print(queue[i][0])
+
+
+ print('1. Check if queue is empty')
+ print('2. Insert with priority')
+ print('3. Pull highest priority element')
+ print('4. Exit')
+ print('Enter the number of your choice')
+
+ choice = int(input())
+ while (choice not in available_choices):
+ print('Please enter a valid choice')
+ choice = int(input())
+
+ if (choice == 1):
+ is_empty(queue)
+ if (choice == 2):
+ queue = insert_with_priority(queue)
+ if (choice == 3):
+ queue = pull_highest_prority_element(queue)
+ if (choice == 4):
+ break
+