Мне был задан этот вопрос с алгоритмом во время моего интервью на месте. Поскольку меня не просили подписать NDA, я отправляю его здесь для получения ответа.
Учитывая массив чисел REAL, который не содержит 0, найдите последовательные элементы, которые дают максимальный продукт. Алгоритм должен выполняться в линейном времени
Я рассмотрел следующий подход: Используйте два массива. Во-первых, использовать идею DP для записи текущего максимального абсолютного значения продукта, а второй - для записи количества отрицательных элементов, встречающихся до сих пор. Конечным результатом будет максимальное максимальное абсолютное значение, а число отрицательных чисел будет четным.
Я думал, что мой метод будет работать, но был прерван во время кодирования, говоря, что это не сработает. Пожалуйста, дайте мне знать, чего не хватает в вышеуказанном подходе.