Полный разбор первой части экзамена в ШАД 2020
Привет! С вами Азат Калмыков, куратор в «ШАД Helper». Мы продолжаем наш цикл статей, в которых разбираем задачи для поступления в ШАД. На этот раз мы (я, Николай Проскурин и Александр Курилкин) посмотрим на решения первого этапа отбора в ШАД в этом году, который закончился совсем недавно. Итак, приступим.
A. Локальный минимум
При каких значениях параметра a первообразная функции имеет не более одного локального минимума?
Заметим, что экспонента всегда положительна, не влияет на знак, поэтому её можно откинуть и считать, что . Многочлен легко раскладывается на множители, потому что все его корни можно угадать: это . Значит, .
Если многочлен имеет четыре различных корня, то он меняет знак в порядке , и потому имеет хотя бы два локальных минимума. Значит, нам могут подойти только . Прямая проверка показывает, что все они являются ответами.
B. Предел
Определите, при каком значении данный предел равен :
Ограничим ряд сверху и снизу и воспользуемся теоремой о двух милиционерах. Заметим, что сумма больше первых двух слагаемых, так как группируя последующие слагаемые по два, мы получим бесконечное число положительных чисел, которые мы откидываем. Аналогично, сверху сумму можно оценить суммой первых трёх слагаемых. Значит:
Поскольку , от возведения в степень неравенство сохранится, а при переходе к пределу изменится только строгость знаков. Левую часть можно посчитать сразу как следствие из второго замечательного предела, она равна . Покажем, что правая равна тому же:
Применяя правило Лопиталя, получаем требуемое. Значит:
Откуда .
Примечание: зная, что степенной ряд можно бесконечно дифференцировать в области сходимости, можно было пропустить шаг с оценкой ряда и сразу применить Лопиталя.
C. Локальный минимум
При какой минимальной длине шага градиентный спуск не сможет найти минимум функции , если ?
В нашем случае градиент — это обычная одномерная производная, так что наша задача проще градиентного спуска в общем случае.
нам известно, давайте посчитаем :
Давайте заметим что, при значение градиента будет таким же по модулю, как в точке , но иметь обратный знак. Таким образом, можно понять, что при таком варианте градиентный спуск будет «скакать» туда-сюда из точки в и обратно. Таким образом, можно понять, что при градиентный спуск уже не найдёт точку минимума (это точка ). Но надо показать, что при меньших она будет найдена.
Это можно понять и интуитивно, но давайте попробуем доказать строго. Можно доказать что по индукции. Здесь нам важно, что
База:
Переход. . За счёт предположения индукции можем получить что . Тогда . Всё доказано.
Пользуясь доказанным, можно получить, что . Так как знаем, что , то получим что сходится к нулю. Значит градиент находит минимум.
D. Собственный вектор
Определите, при каких значениях параметра a вектор является собственным вектором матрицы
E. Определитель
При каких значениях параметра максимален определитель матрицы, обратной к этой?
F. Проекции
Даны точки и , а также плоскости : и : . Найдите координаты точки , если известно, что её ортогональная проекция на совпадает с проекцией точки , а на — с проекцией точки .
Аналогично, лежит на прямой, проходящей через и перпендикулярной . Вектор нормали: , система:
Пересечение прямых и будет являться искомой точкой. Для её нахождения нужно определить и , для этого достаточно приравнять первые два уравнения систем:
Подставив параметры в обе системы, убеждаемся, что получили одну и ту же точку , которая и является искомой.
G. Домино
В далёком созвездии Тау-Кита на каждой половинке костяшки домино стоит от до точек, причём для каждой пары чисел таких, что и целые от до , существует ровно одна доминошка, содержащая оба этих числа. Космический турист прилетел и выбрал наугад перевёрнутую костяшку. При каком математическое ожидание модуля разности количеств точек на одной и на другой половине этой доминошки будет равно ?
Пусть — событие, что величина примет значение , тогда . Домножив на , получаем:
Посчитаем . Во-первых, в него входят доминошки с одинаковыми числами на половинках. Во-вторых, в него входят все возможные пары различных чисел, причем каждая по одному разу. Значит,
.Теперь посчитаем сумму. Понятно, что величина принимает значения от 0 до . Сколько раз она принимает значение ? Ровно : благоприятные исходы — это доминошки . Значит:
Получаем уравнение:
Поскольку .
H. Экзамен
Два друга решили вместе пойти на экзамены в ШАД и договорились встретиться у входа с 14:00 до 15:00, но не договорились во сколько именно. Момент времени прихода каждого из них распределён равномерно на этом отрезке времени, но друзья нетерпеливые, поэтому через 15 минут ожидания они отчаиваются дождаться и заходят одни. Известно, что они встретились.
Найдите вероятность того, что оба пришли до 14:45.
Событие «друзья встретились» изображено на рисунке красной областью. Событие «каждый пришёл до 14:45» обозначено пересечением 2 зелёных областей. Пользуясь тем, что время прихода каждого из друзей распределено равномерно, можем понять, что вероятность того, что «каждый пришёл до 14:45» при условии, что «друзья встретились» это отношение площади пересечения всех 3 областей к площади красной области. Применяя теорему пифагора и простой счёт, можем получить ответ .
I. Случайная величина
Плотность распределения случайной величиы равна при от до и нулю при всех остальных .
Найдите значение, которое эта случайная величина не превосходит с вероятностью .
Получили уравнение:
J. Найти среднее
Это делается с помощью следующего трюка. Насчитаем массив sums, где . Так как , то это можно сделать за . Теперь сумма на отрезке с по — это просто . Чтобы вычислить среднее арифметическое на отрезке, нужно еще поделить эту сумму на . Итого на запрос и на предподсчёт.
В вариации со средним геометрическим чуть посложнее. Так как теперь вместо суммы у нас умножение, числа могут расти довольно быстро, и произведение чисел на префиксе может быть настолько большим или маленьким, что не будет влезать в стандартные типы данных. Чтобы решить эту проблему, будем считать натуральный логарифм среднего геометрического, а потом просто возведем в эту степень. Школьная математика гласит, что , а сумму логарифмов можно посчитать за с помощью описанного выше трюка.
Код: gist.github.com/Azatik1000/0b0d8496785169a8ac0d35a8c9e8e59f
K. Удалить последнего
Код: gist.github.com/Azatik1000/2fef745e23c23eb020f21878980cae08
L. Доска объявлений
Костя решил развесить объявления о том, как наиболее правильно мыть руки.
Он нашел доску объявлений размером , а его объявление имеет ширину a и пока неизвестную высоту не менее b. Костя хочет разместить объявление, чтобы оно не накрывало никакое уже размещенное на доске объявление. У нового объявления может быть общая граница с наклеенными или доской объявлений, но площадь пересечения с другими объявлениями должна быть нулевой.
Вам даны координаты наклеенных объявлений. Определите координаты области, где Костя может приклеить свое объявление так, чтобы высота объявления была как можно больше. Если таких областей несколько, то подойдет любая из них.
Про координаты. Левый нижний угол доски объявлений имеет координаты , а правый верхний — . Для каждого уже наклеенного объявления нам известны координаты левого нижнего угла и правого верхнего углов.
Гарантируется, что подходящая область на доске объявлений всегда существует.
Формат ввода
В первой строке заданы размеры доски объявлений , и размер объявления Кости , (, , , ).
Во второй строке записано число () — количество уже приклеенных объявлений.
Далее в строках записаны координаты объявлений и (). Объявления могут перекрываться, т.е. иметь ненулевую площадь пересечения.
Формат вывода
Выведите координаты левого нижнего и правого верхнего углов области, куда Костя может приклеить объявление. Область должна иметь ширину и наибольшую подходящую высоту (гарантируется, что не менее ). Никакая часть найденной области не должна быть занята наклеенными объявлениями.
Все числа должны быть целыми и неотрицательными.
Если подходящих областей несколько, выведите любую из них.
Пример 1
Пример 2
Пример 3
Переберем ширину (от до ), на которой будет находиться левая граница нашего объявления. Рассмотрим только те объявления, у которых ненулевая часть их площади находится на высоте от до , остальные никак не мешают нам наклеить наше объявление. Для тех, которые попали в «полосу» от до , выпишем пары -координаты их нижней и верхней границ. Эти пары образуют отрезки, ни с одним из которых не должен пересекаться отрезок , где и — это -координаты нижней и верхней границы соответственно той области, куда мы наклеим наше объявление. Осталось максимизировать — .
Для этого объединим все выписанные отрезки, добавив к ним для удобства и , соответствующие границам доски. Чтобы это сделать, отсортируем все отрезки по нижей, а при равенстве по верхней границе, и пройдемся по ним в отсортированном порядке. Если нижняя граница очередного отрезка ниже верхней границы последнего отрезка, то расширим последний до верхней границы очередного отрезка, иначе добавим в объединение очередной отрезок. После того, как мы получили объединение отрезков, ответом является максимальная разность между концами двух соседних в отсортированном порядке отрезков в объединении.
При максимизации ответа запоминаем подходящие границы и таким образом нходим ответ. Итого по времени и по памяти.
Код: gist.github.com/Azatik1000/2c07ebdd866ce20a4b5f5e6ee7408ad7