summaryrefslogtreecommitdiff
path: root/progs/a586.py
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2024-05-28 10:29:13 +0200
committerSanto Cariotti <santo@dcariotti.me>2024-05-28 10:29:13 +0200
commitf05d888a0b621ca4e99e2b0fb6e23c097006fe41 (patch)
treeeebbb2489144112d3288393e354d19375a0aa088 /progs/a586.py
Init
Diffstat (limited to 'progs/a586.py')
-rw-r--r--progs/a586.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/progs/a586.py b/progs/a586.py
new file mode 100644
index 0000000..d22252b
--- /dev/null
+++ b/progs/a586.py
@@ -0,0 +1,18 @@
+def is_majority(arr, n, x):
+ i = binary_search(arr, 0, n-1, x)
+ if i == -1:
+ return False
+ if ((i + n//2) <= (n -1)) and arr[i + n//2] == x:
+ return True
+ else:
+ return False
+def binary_search(arr, low, high, x):
+ if high >= low:
+ mid = (low + high)//2
+ if (mid == 0 or x > arr[mid-1]) and (arr[mid] == x):
+ return mid
+ elif x > arr[mid]:
+ return binary_search(arr, (mid + 1), high, x)
+ else:
+ return binary_search(arr, low, (mid -1), x)
+ return -1 \ No newline at end of file