JavaRush /Java блог /Архив info.javarush /Кухня(); Задание N65
terranum
28 уровень
Milan

Кухня(); Задание N65

Статья из группы Архив info.javarush
Кухня(); Задание N65 - 1 Правила [Одномерные массивы] 65. Найти длину самой длинной "пилообразной" (зубьями вверх) последовательности подряд идущих чисел Xk < Xk+1 > Xk+2 > ... > Xk+m < Xk+m+1 <...< Xn.
Комментарии (10)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Airon Уровень 34
6 октября 2014
public static int lengthSaw(int[] array) {
    int length = 0;
    int maxLength = 0;
    boolean isPrev = false;
    for (int i = 1; i < array.length - 1; i++) {
        if(array[i - 1] < array[i] && array[i] > array[i + 1]) {
            if(isPrev) {
                length += 2;
            } else {
                length = 3;
                isPrev = true;
            }
            i++;
        } else {
            isPrev = false;
            maxLength = Math.max(maxLength, length);
        }
    }
    return Math.max(maxLength, length);
}
Vash_the_Stampede Уровень 11
5 октября 2014
public static int solve(int[] arr) {
    int res = 0;
    int count = 0;

    for (int i = 1; i < arr.length - 1; i += 2) {
        if (arr[i] > arr[i - 1] && arr[i] > arr[i + 1]) {
            count++;
        }
        else {
            res = Math.max(res, count);
            count = 0;
        }
    }
    res = Math.max(res, count);

    for (int i = 2; i < arr.length - 1; i += 2) {
        if (arr[i] > arr[i - 1] && arr[i] > arr[i + 1]) {
            count++;
        }
        else {
            res = Math.max(res, count);
            count = 0;
        }
    }
    res = Math.max(res, count);

    return res * 2 + 1;
}
Docktor91 Уровень 40
5 октября 2014
ну что никто не решится?
народу куча, а готовят на кухне 5-6 человек
Vash_the_Stampede Уровень 11
3 октября 2014
я думаю, условие такое должно интерпретироваться, как нахождение подмассива из подряд идущих элементов, так что каждый, кроме крайних, является локальным минимумом или локальным максимум. Еще, возможно, второй и предпоследний элемент должны быть именно локальными максимумами.
Docktor91 Уровень 40
3 октября 2014
длина зубьев одинаковая?