38 lines
772 B
Python
38 lines
772 B
Python
from math import *
|
|
|
|
|
|
def input_list():
|
|
return list(map(int, input().split()))
|
|
|
|
|
|
def xzsort(alist):
|
|
blist = []
|
|
for j in range(len(alist)):
|
|
minn = 0
|
|
for i in range(len(alist)):
|
|
if (alist[minn] > alist[i]):
|
|
minn = i
|
|
blist.append(alist[minn])
|
|
alist[minn] = 114514
|
|
return blist
|
|
|
|
|
|
def binarySearch(arr, l, r, x):
|
|
if (r - l == 1):
|
|
if (arr[l] == x):
|
|
return l
|
|
elif (arr[r] == x):
|
|
return r
|
|
else:
|
|
return -1
|
|
mid = floor((l + r) / 2)
|
|
if (arr[mid] >= x):
|
|
return binarySearch(arr, l, mid, x)
|
|
else:
|
|
return binarySearch(arr, mid, r, x)
|
|
|
|
|
|
a = input_list()
|
|
x = int(input())
|
|
print(binarySearch(xzsort(a), 0, len(a) - 1, x))
|