def binary_search(arr, target): left = 0 right = len(arr) - 1 result = -1 while left <= right: mid = left + (right - left) // 2 if arr[mid] > target: result = mid right = mid - 1 else: left = mid + 1 return result def main(): arr = [3, 5, 2, 8, 1, 9, 4] # Пример массива if not arr: # Если массив пустой print("Массив пустой") return last_element = arr[-1] print("Элементы массива, которые больше последнего элемента:") for i in range(len(arr) - 1): if arr[i] > last_element: print(arr[i]) greater_values = [] for i in range(len(arr) - 1): if arr[i] > last_element: greater_values.append(arr[i]) target = last_element greater_values.sort() for value in greater_values: result = binary_search(greater_values, value) if result != -1: print(f"Бинарный поиск: Элемент {value} находится в позиции {result}") if __name__ == "__main__": main()
Этот код сначала выводит элементы массива, которые больше последнего элемента. Затем он сортирует эти элементы и использует бинарный поиск для нахождения их индексов в отсортированном массиве.
Пример реализации на Python:
def binary_search(arr, target):left = 0
right = len(arr) - 1
result = -1
while left <= right:
mid = left + (right - left) // 2
if arr[mid] > target:
result = mid
right = mid - 1
else:
left = mid + 1
return result
def main():
arr = [3, 5, 2, 8, 1, 9, 4] # Пример массива
if not arr: # Если массив пустой
print("Массив пустой")
return
last_element = arr[-1]
print("Элементы массива, которые больше последнего элемента:")
for i in range(len(arr) - 1):
if arr[i] > last_element:
print(arr[i])
greater_values = []
for i in range(len(arr) - 1):
if arr[i] > last_element:
greater_values.append(arr[i])
target = last_element
greater_values.sort()
for value in greater_values:
result = binary_search(greater_values, value)
if result != -1:
print(f"Бинарный поиск: Элемент {value} находится в позиции {result}")
if __name__ == "__main__":
main()
Этот код сначала выводит элементы массива, которые больше последнего элемента. Затем он сортирует эти элементы и использует бинарный поиск для нахождения их индексов в отсортированном массиве.