С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 29.01.2022
Сообщений: 19
1

Найдите отрезок массива максимальной длины, в котором первое число равно последнему, второе – предпоследнему

13.06.2022, 22:32. Показов 637. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Перевёртыши

Задан числовой массив a[n]. Найдите отрезок массива максимальной длины, в котором первое
число равно последнему, второе – предпоследнему и так далее.
Если подходящих отрезков несколько, выведите первый по порядку.
Формат ввода: первая строка: n. n ≤ 7000. Вторая строка: элементы
массива. -maxint ≤ a[i] ≤ maxint
Формат вывода: искомый отрезок.
input.txt
9
5 3 4 7 4 3 6 6 3
output.txt
3 4 7 4 3
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.06.2022, 22:32
Ответы с готовыми решениями:

В массиве найти отрезок максимальной длины, в котором первое число равно последнему, второе - предпоследнему и т.д. Напечатать характеристики этого от
Помогите ребят!!!!препод задачи задачи для аттестации,сделал фактически все,кроме этой: "В массиве...

Найдите отрезок массива, в котором первое число равно последнему, второе - предпоследнему и так далее
Задание: Задан числовой массив A(M). Найдите отрезок массива, в котором первое число равно...

Найти отрезок массива-палиндром, в котором первое число равно последнему, второе предпоследнему и т.д.
Перевертыши. Дан числовой массив А. Найти отрезок массива максимальной длины, в котором первое...

Найдите отрезок максимальной длины, в котором первое число равно последнему, второе — предпоследнему
Задан числовой массив длины N . Найдите отрезок максимальной длины, в котором первое число равно...

Найти отрезок массива максимальной длины, в котором первое число равно последнему, второе-предпоследнему и т.д.
Всем доброго времени суток. Есть задача - "Дан массив А. Найти отрезок массива максимальной длины,...

1
случайный прохожий
3032 / 2064 / 626
Регистрация: 20.07.2013
Сообщений: 5,572
14.06.2022, 08:11 2
Ниже приведен код ("набросок"), содержащий структуру с двумя полями index (начальный индекс отрезка) и count (общее количество "элементов отрезка"), а также функция, находящая эти значения (index и count) для исходного массива.
C++
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
struct Segment
{
  unsigned index, count;
};
 
Segment max_segment(int *a, unsigned n)
{
  Segment result, tmp;
  result.index = 0;
  result.count = 1;
  unsigned i, j;
 
  for (i = 0; i < n; i++)
  {
    tmp.index = i;
    tmp.count = 1;
    for (j = 1; j <= i; j++)
    {
      if (a[i + j] == a[i - j])
      {
        tmp.count += 2;
        if (tmp.count > result.count)
        {
          result.index = i - tmp.count / 2;
          result.count = tmp.count;
        }
      }
      else
      {
        tmp.count = 1;
        break;
      }
    }
  }
 
  return result;
}
Для примера, приведенного выше, функция вернет значения 1 (начало отрезка - индекс элемента массива) и 5 (количество элементов).
Нужно только не забыть (если нужно), объявить переменную типа Segment и вывести элементы отрезка.
Вариант кода в билдере:
C++
1
2
3
4
5
6
7
  const n = 9;
  int a[n] = {5, 3, 4, 7, 4, 3, 6, 6, 3};
 
  Segment result = max_segment(a, n);
 
  String tmp = String(result.index) + " : " + String(result.count);
  ShowMessage(tmp);
Добавлено через 14 минут
Замечу еще, что в условии
C++
17
    for (j = 1; j <= i; j++)
нужно дополнительно добавить ограничение, чтобы не было выхода за границы массива.
Это оставляю для самостоятельной работы.
0
14.06.2022, 08:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.06.2022, 08:11
Помогаю со студенческими работами здесь

Найти отрезок массива максимальной длины, в котором первое число равно последнему, второе предпоследнему и т.д.
Задан числовой массив A. Найти отрезок массива максимальной длины, в котором первое число равно...

Найти отрезок массива максимальной длины , в котором первое число равно последнему
дан числовой массив . Найти отрезок массива максимальной длины , в котором первое число равно...

Найти отрезок массива максимальной длины, в котором первое число равно последнему
дан числовой массив. Найти отрезок массива максимальной длины, в котором первое число равно...

Найти отрезок массива максимальной длины, в котором первое число равно последнему
массивы..

Найти отрезок массива максимальной длины, в котором первое число равно последнему
Создать файл из N целых чисел. Найти отрезок массива максимальной длины, в котором первое число...

Дан числовой массив . Найти отрезок массива максимальной длины , в котором первое число равно последнему! заранее спасибо
дан числовой массив . Найти отрезок массива максимальной длины , в котором первое число равно...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru