Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

определение кол-ва участков м массиве - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Cторон многоугольника http://www.cyberforum.ru/cpp-beginners/thread230738.html
Многоугольник задан координатами своих вершин.Определить принадлежит ли заданная точка стороне этого многоугольника. Помогите пожалуйста!не соображу что за условие для точки( Добавлено через 2...
C++ Изменение цвета области формы в зависимости от скролбара Задание: Написать программу которая будет изменять цвет области формы в зависимости от значений scrallbar. (3 СКРОЛБАРА) http://www.cyberforum.ru/cpp-beginners/thread230736.html
Программа отображающая сортировку массива C++
Задание: Написать программу с графическим интерфейсом отображающую сортировку массива. Все поточные значения массива должны быть отображены на форме.
C++ Ручная сортировка файлов по разрешениям
Всем добрый день. Есть список файлов в текущей папке проекта, пытаюсь забить в vector<string> modelfiles только те, что с расширением .cpp void L_CDialog::InitFileList() { WIN32_FIND_DATA...
C++ Не могу доделать программу(здчу) VC++ http://www.cyberforum.ru/cpp-beginners/thread230716.html
Вообщем вот мой код, задача должна работать как на картинке, но что-то у меня не удается, помогите плиз, поставте на путь истинный =) CMyClass.h #ifndef CMYCLASS_H #define CMYCLASS_H ...
C++ Структура Вывести список номеров неуспевающих студентов и вычислить абсолютную успешность А=(1-M/N)*100, где М - количество неуспевающих студентов, N - общее количество студентов группы. Программу реализовать,... подробнее

Показать сообщение отдельно
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
18.01.2011, 17:58
максимум таких участков N, если все элементы вразнобой, так? Значит заведем массив из N целых чисел для всех возможных участков. Значением элемента будет длина участка которому он соответствует, а его индекс это номер участка.
Заведем массив A для, собственно, выборки и заведем массив B для информации об участках в A. Заполним A выборкой, а B нулями. i счетчик для индекса A, j счетчик для индекса B.
Сначала разберемся с возрастанием. Проходим по A проверяя A[i] < A[i+1] если выполняется то увеличиваем счетчик длины на один и i++, если не выполняется записываем счетчик длины в текущий элемент B[j] и j++ , и так далее до конца массива A. После прохода будем иметь j и заполненный массив B. Первые j+1 элемента в B будут содержать длины монотонных отрезков, а, собственно, j+1 это их количество.
С убыванием точно также, только в проходе проверяем A[i] > A[i+1].

Ой, задание не дочитал, можно без B обойтись.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru