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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Stg
0 / 0 / 0
Регистрация: 21.01.2013
Сообщений: 3
#1

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

21.01.2013, 14:28. Просмотров 466. Ответов 0
Метки нет (Все метки)

Здравствуйте уважаемые форумчане. Помогите пожалуйста. Собственно задача на С++:

Дано целое число N и набор из N целых чисел, содержащий только нули и единицы.
Найти номер элемента, с которого начинается самая длинная последовательность
одинаковых чисел, и количество элементов в этой последовательности.
Если таких последовательностей несколько, то вывести номер первой из них.

Суть проблемы в том, что не могу сделать следующее: "Найти номер элемента, с которого начинается самая длинная последовательность одинаковых чисел" и как следствие: "Если таких последовательностей несколько, то вывести номер первой из них." Всё остальное работает более-менее прилично.

Собственно код всего остального:

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include<iostream>
#include <ctime> 
using namespace std;
int main()
{ 
    int n,i,c,firs_value,last_value;
   srand( time( 0 ));
   cout<<"Vvedite Chislo simvolov"<<endl;
   cin>>n;
     
     firs_value=0;
       
       last_value=1;
          int a[n];  
          for (i=0;i<n;i++){
          a[i]=firs_value + rand() % (last_value-firs_value+1);
          cout<<a[i]<<"  ";
          }
          cout <<"  "<< endl;
    
   
   unsigned int start_time = clock(); 
int k=1; int max=0;
           for (i=0; i<n; i++)
          if  (a[i]==a[i+1]) k++;
          else 
          {
               if (k>max)
               max=k;
         k=1;
          }
           cout <<"Kolichestvo znakov = "<<max<<endl;
         int d=1; 
      
      
      
           
            
                              
   unsigned int end_time = clock(); 
   unsigned int search_time = end_time - start_time; 
   cout<<"vremya poiska  "<<search_time<<endl;
   system("pause");
   return 0;
}
Я понимаю, что там должен быть какой-то цикл, но какой конкретно, не знаю. Напишите хотя бы примерный.

Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2013, 14:28     Найти номер элемента, с которого начинается самая длинная последовательность одинаковых чисел, и количество элементов в этой последовательности
Посмотрите здесь:

Найти номер элемента, с которого начинается самая длинная последовательность единиц - C++
Люди, окажите пожалуйста хелп, буду признателен...Minmax28. Дано целое число N и набор из N целых чисел, содержащий только нули и единицы....

Найдите индексы строки и столбца для элемента, с которого начинается самая длинная серия. - C++
Тема задания: Массивы. Структурные типы. Классы. Задача: Определите двумерный массив, содержащий целые числа. Будем называть серией...

Найдите индексы строки и столбца для элемента, с которого начинается самая длинная серия - C++
Задача: Определите двумерный массив, содержащий целые числа. Будем называть серией последовательность совпадающих элементов, расположенных...

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

Найти номер строки, в которой находится самая длинная последовательность - C++
Как в целочисленной прямоугольной матрице найти номер строки, в котором находится самая длинная последовательность одинаковых элементов?

Найти номер элемента из массива А, с которого массив В начинается как подпоследовательность - C++
Помогите, пожалуйста, написать программу, которая находила бы номер элемента из массива А, с которого массив В начинается как...

Самая длинная последовательность не повторяющихся элементов в массиве - C++
Помогите!! нужно написать программу,которая выводит на экран самую длинную последовательность не повторяющихся элементов в массиве.

Найти номер максимального элемента в этой последовательности - C++
Решить задачи в С++, с использованием основных операторов языка С++: 1)Дана последовательность из n целых чисел. Найти номер максимального...

Двумерный массив: строка, в которой находится самая длинная серия одинаковых элементов - C++
Дана целочисленная прямоугольная матрица. Определить: 1) Количество столбцов, содержащих хотя бы один нулевой элемент. 2)Номер...

Найти число последовательности, у которого количество одинаковых цифр максимально - C++
Найти число последовательности, у которого количество одинаковых цифр максимально?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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