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

Определить номер строки, в которой находится самая длинная серия одинаковых элементов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как создать меню для выбора проги? http://www.cyberforum.ru/cpp-beginners/thread75256.html
Как создать меню для выбора задачи? Опустим у меня есть 3 задачи, как написать к ним меню, их все 3 в одну объединить надо что ли? Объясните кто-нибудь плз...
C++ Найти количество элементов массива после последнего нуля Как найти количество элиментов после последнего нуля Например: 1 2 0 0 4 0 5 Ответ 1 http://www.cyberforum.ru/cpp-beginners/thread75244.html
C++ Чтение строки в переменную типа String до определённого символа
Здравствуйте! Помогите написать код для извлечения из строки, полученной из файла методом fgets, новой строки до символа "-". В текстовике записано так: Am-002210 E-022100 F-133211 Надо записать...
C++ Двусвязный список. разобраться в проге.
Помоги разобраться в проге...не до конца понимаю что там происходит.. комментарии к каждой строчке нужны..
C++ Найти номер последнего максимального элемента среди элементов, лежащих в диапазоне [c,d] и расположенных до первого четного элемента. http://www.cyberforum.ru/cpp-beginners/thread75223.html
помогите с задачкой Найти номер последнего максимального элемента среди элементов, лежащих в диапазоне и расположенных до первого четного элемента.
C++ одномерные массивы кто сможет помогите с задачкой ) 52. Найти номер последнего максимального элемента среди элементов, лежащих в диапазоне и расположенных до первого четного элемента. подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
17.12.2009, 07:00
К первой задаче:
если mas[][] - квадратная матрица размерностью n, тогда так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int max_i=0, max=1, a;
for(int i=0; i<n; i++)
for(int j=0; j<n-1; j++)
{
    
    if(mas[i][j]==mas[i][j+1])
    {
        a=0;
        while(mas[i+a][j]==mas[i][j+1+a] && i+a<n)
            a++;
        if(max<a+1)
        {
            max=a+1;
            max_i=i;
        }
        i+=a+1;
    }
}
теперь в max_i номер нужной нам строки.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru