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

pelles c Задан целочисленный массив размера N

17.01.2011, 14:42. Показов 2923. Ответов 23
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задан целочисленный массив размера N. Отсортировать серии в массиве в порядке убывания их длины.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2011, 14:42
Ответы с готовыми решениями:

Задан вещественный массив размера N pelles c
Задан вещественный массив размера N. Найти сумму второго максимума и третьего минимума массива. Все...

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

Задан целочисленный массив размера N
Задан целочисленный массив размера N. Удалить из массива все элементы, значение которых равно X...

Задан целочисленный массив размера N. Отсортировать серии в массиве в порядке убывания их длины
В общем, есть две задачи, ух на какую же веселую и ни черта не понятную для меня тему. 1. Задан...

23
2 / 2 / 0
Регистрация: 08.12.2010
Сообщений: 40
19.01.2011, 14:02  [ТС] 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Chelioss Посмотреть сообщение
А где вы в моем алгоритме увидели длины? Я сделал убывание по значению, а вам надо лишь переделать убывание по серии, т.е. сравнивать не mas[i]>mas[i-1], а seria1(текущая)>seria2(серия перед текущей)
здорово, только я не знаю, как пполучить серию.

Добавлено через 1 час 14 минут
Цитата Сообщение от valeriikozlov Посмотреть сообщение
napalm2005, Тогда давайте по Вашему попробуем:
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <stdio.h>
 
int main()
{
        int N, i, i_max, i_t=0, fl=1, len_temp, len_max, i_temp; 
        printf("N= ");
        scanf("%d", &N);
        int mas[N];
        for(i=0; i<N; i++)
        {
            printf("[%d]= ", i);
            scanf("%d", &mas[i]);
        }
        for(i=0; i<N; i++)
            printf("%d ", mas[i]);
        printf("\n");
        while(i_t<N)
        {
            len_temp=len_max=1;
            i_temp=i_max=i_t;
            for(i=i_t+1; i<N; i++)
            {
                if(mas[i]!=mas[i-1])
                {
                    if(len_temp>len_max)
                    {
                        len_max=len_temp;
                        i_max=i_temp;
                    }
                    i_temp=i;
                    len_temp=1;
                }
                else
                    len_temp++;
            }
            if(len_temp>len_max)
            {
                len_max=len_temp;
                i_max=i_temp;
            }
            if(i_max!=i_t)
            {
                int temp=mas[i_max];
                for(i=i_max-i_t; i>0; i--)
                    mas[len_max-1+i_t+i]=mas[-1+i_t+i];
                for(i=0; i<len_max; i++)
                    mas[i_t+i]=temp;
            }
            i_t+=len_max;
        }
        for(i=0; i<N; i++)
            printf("%d ", mas[i]);      
        printf("\n"); 
        return 0;
}
я еще бы узнать хотел, а не нужно ли в 41 строке, чтобы вместо if стояло else if?
0
Эксперт С++
4727 / 2548 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
19.01.2011, 14:08 22
а не нужно ли в выделенной строке, чтобы было вместо if стояло else if?
не нужно.
Это для случая когда серия стоит на своем месте.
1
2 / 2 / 0
Регистрация: 08.12.2010
Сообщений: 40
19.01.2011, 14:44  [ТС] 23
Цитата Сообщение от valeriikozlov Посмотреть сообщение
не нужно.
Это для случая когда серия стоит на своем месте.
а если применить else if?

Добавлено через 30 минут
valeriikozlov, тогда еще один к вам вопрос, а если мне нужно поменять только серию, к примеру с минимальной длиной, с последней серией в массиве?
0
Эксперт С++
4727 / 2548 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
19.01.2011, 16:35 24
а если применить else if?
тогда должно быть так: если последняя последовательность не самая короткая, то выдаст ерунду.
а если мне нужно поменять только серию, к примеру с минимальной длиной, с последней серией в массиве?
Код должен сработать и для этого случая
0
19.01.2011, 16:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.01.2011, 16:35
Помогаю со студенческими работами здесь

Задан целочисленный массив размерности N
//Задан целочисленный массив размерности N.Есть ли среди элементов массива простые числа ? Если да,...

Дан целочисленный массив размера N. Преобразовать массив, увеличив каждую его серию на один элемент
1. Дан целочисленный массив размера N. Преобразовать массив, увеличив каждую его серию на один...

Дан целочисленный массив размера N. Преобразовать массив, увеличив каждую его серию на один элемент
Помогите преобразовать код из языка С# в С++. Занимался разбором задачи на языке С++. Вот...

Дан целочисленный массив размера N. Преобразовать массив, уменьшив каждую его серию на один элемент
Помогите с задачей! Серия - это одинаковые элементы, идущие подряд. Пример: Ввод массива: 1 1 2...

Дан целочисленный массив размера N.
Дан целочисленный массив размера N. Найти максимальное кол-во его одинаковых элементов. Помогите...

Дан целочисленный массив размера N
Дан целочисленный массив размера N. Вывести вначале все содержащиеся в данном массиве четные числа...


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

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