Задание 6. Бинарный поиск
6.1 Приближенный поиск
Дан упорядоченный по возрастанию массив чисел. Дан второй массив чисел — запросы. Для каждого запроса необходимо вывести число из первого массива наиболее близкое к запрашиваемому.
Входные данные
В первой строке целое число — количество элементов в массиве. Во второй строке целых чисел — элементов массива. В третьей строке число — количество запросов. В четвертой строке целых числе — запросы.
Выходные данные
На выходе чисел через пробел — результаты выполнения запросов.
Пример
Вход
8
1 3 5 8 10 11 14 20
2
19 9
Выход
20 8
6.2 Дипломы
Дано одинаковых дипломов высотой и шириной . Нужно найти сторону минимально возможного квадратного ящика, в который можно будет разложить все дипломы.
Дипломы нельзя вращать и складывать друг на друга.
Алгоритм должен использовать бинарный поиск.
Входные данные
На входе 3 целых числа: n w h
, где
Выходные данные
На выходе одно целое число — длина стороны минимального квадратного ящика, в который можно расположить все дипломы.
Пример 0
Вход
1 1 1
Выход
1
Пример 1
Вход
10 2 3
Выход
9
Пример 2
Вход
5 1 1
Выход
3
6.3 Решение уравнения
Найдите такое число , что , с точностью не менее 6 знаков после точки.
Алгоритм должен найти корни уравнения методом динарного поиска для последовательного приближения, до тех пор, пока не будет достигнута требуемая точность.
Входные данные
Вещественное число
Выходные данные
Вещественное число , удовлетворяющее уравнению.
Пример 1
Вход
1.0
Выход
1.0
Пример 2
Вход
4.0
Выход
2.166738