tl; dr - Мы можем показать, что ответ должен иметь длину 2 или 3, после чего наступает линейное время для проверки всех возможностей.
Допустим, входное значение равно A
, а наименьший подмассивс самой большой медианой - a
.Самая большая медиана - это либо отдельный элемент, либо среднее значение пары элементов из a
.Обратите внимание, что каждый элемент в a
больше, чем самый большой элемент медианы, может находиться только рядом с элементами, меньшими, чем самый маленький элемент медианы (в противном случае такую пару можно было бы выбрать в качестве подмассива для формирования большей медианы).
Если на любом конце a
есть пара элементов, которые не содержат элемент медианы, его можно исключить из a
, не затрагивая медиану, противоречие.
Если бы любой конец a
был меньше, чем наименьший элемент медианы, его удаление увеличило бы медиану, противоречие.
Таким образом, каждый конец a
является либо элементом медианы, либо больше, чем самый большой элемент медианы (потому что он больше, чем самый маленький эльт медианы и не равен наибольшему эльту медианы).).
Таким образом, каждый конец a
является элементом медианы, потому что в противном случае у нас был бы элемент, больший, чем элемент медианы, смежный с elt медианы, образующий большую медиану.
Если a
нечетно, то оно должно иметь длину три, так как любая большая нечетная длина может иметь 2, удаленные от конца a
, наиболее удаленного от медианы, без изменения медианы.
Если a
четное, то оно должно иметь длину 2, потому что любая большая четная длина, записанная элементами медианы с элементами интерьера, чередующимися между меньшим и большим, чем медиана, должна иметь один из медианных элементов, смежный с большим элементом, чемдругой эльт медианы, образующий большую медиану.
Этот набросок доказательства может использовать некоторое редактирование, но независимо от этого, делается вывод, что наименьший массив, содержащий наибольшую медиану, должен иметь длину 2 или 3.
Учитывая это, проверять каждый такой подмассив за линейное время.О (п).