Pagini recente » Cod sursa (job #3287851) | Borderou de evaluare (job #1567259) | Cod sursa (job #2337618) | Cod sursa (job #1021933) | Cod sursa (job #2477093)
# Given a sorted array arr[] of n elements, write a function
# to search a given element x in arr[].
def binarySearch(array, value, left, right):
if(left > right):
return -1
middle = (left + right) // 2
if array[middle] == value:
return middle
elif array[middle] > value:
binarySearch(array, value, left, middle - 1)
else:
binarySearch(array, value, middle + 1, right)
def readFromFile(array):
with open('data.input', 'r') as fp:
n, value = [int(x) for x in next(fp).split()]
for line in fp:
array.extend([int(x) for x in line.split()])
fp.close()
return n, value
def printToFile(value):
fp = open("data.output", "w")
fp.write(value.__str__())
fp.close()
def main():
array = []
n, value = readFromFile(array)
position = binarySearch(array, value, 0, n - 1)
printToFile(position)
if __name__ == '__main__':
main()