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

Найти количество членов самой длинной подпоследовательности, состоящий из членов последовательности А

09.10.2019, 20:23. Показов 1850. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
пользователем задано количество членов последовательности N и
набор действительных чисел, члены последовательности А. Найти количество
членов самой длинной подпоследовательности, состоящий из членов
последовательности А, идущие подряд и отсортированы по возрастанию

Возникли сложности с построением программы:

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
#include <iostream>
#include <math.h>
using namespace std;
int main(){
    int n,count=0,k;
    cout<<"kolichestvo nomerov"<<endl;
    cin>>n;
    int *pos[n];
    cout<<"zapolnit posledovatelnist 1"<<endl;
    for(int i=0;i<n;i++){
        cin>>*pos[i];}
    int *pos[n];
    cout<<"zapolnit posledovatelnost 2"<<endl;
    for(int j=0;j<n;j++){
        cin>>*pos[j];
        for(j=0;j<n;j++){
        if(k==*pos[j]){
            *pos[j]=n;
            break;
        }}
        if(*pos[j]==n){
        count++;
    }
    cout<<"max"<<count<<endl;
}
}
Крашит после ввода данных, по всей видимости где-то ошибка..
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.10.2019, 20:23
Ответы с готовыми решениями:

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

Получить число отрицательных членов подпоследовательности и число нулевых членов всей последовательности
Program ms1; uses crt; const n=45; var a:array of integer; i,ko,kn:integer; begin clrscr;...

подсчёт количества членов в наиболее длинной подпоследовательности из одинаковых чисел
Для последовательности чисел подсчитать количество членов в наиболее длинной подпоследовательности...

Составьте программу на хождения самой длинной возрастающей подпоследовательности данной последовательности
Задана последовательность из N чисел. Составьте программу на хождения самой длинной возрастающей...

4
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,712
09.10.2019, 21:10 2
12 строка
Цитата Сообщение от memory_loss Посмотреть сообщение
int *pos[n];
C++
1
int* pos=new int[n];
Далее везде убрать звездочку.
и в конце
C++
1
delete[] pos;
И второй массив надо назвать по другому, например pos2.
Его размер не обязан быть равным n
0
0 / 0 / 0
Регистрация: 08.10.2019
Сообщений: 10
09.10.2019, 21:36  [ТС] 3
#include <iostream>
#include <math.h>
#include <stdlib.h>
using namespace std;
int main(){
int n,count=0,k;
cout<<"kolichestvo nomerov"<<endl;
cin>>n;
int *pos[n];
cout<<"zapolnit posledovatelnist 1"<<endl;
for(int i=0;i<n;i++){
cin>>*pos[i];}
int *pos2=new int[n];
cout<<"zapolnit posledovatelnost 2"<<endl;
for(int j=0;j<n;j++){
cin>>pos2[j];
for(j=0;j<n;j++){
if(k==pos2[j]){
pos[j]=n;
break;
}}
if(pos2[j]==n){
count++;
}
cout<<"max"<<count<<endl;
}
delete[] pos;
}


Прости мою тупость, работаю с C++ меньше недели. Вроде заменил всё, выдаёт ошибку в строке 19 и предупреждение в строке 27.
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
09.10.2019, 23:56 4
Лучший ответ Сообщение было отмечено memory_loss как решение

Решение

memory_loss, старайтесь не применять массив, если в условии последовательность. потестируйте, вроде работает
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
#include <iostream>
using namespace std;
 
int main()
{
    int N, count=0, max_count=0;
    double a, b;
    
    cout << "N="; cin >> N;
    
    cout << "Enter " << N << " elements:\n";
    cin >> a;
    for (int i = 2; i <= N; i++)
    {  
        b=a;
        cin >> a;
        if (b<=a) count++;     
        if (b>a || (b<=a && i==N))
        {       
        if (count>max_count) max_count=count;    
        count=0;
        }
        
    }
    cout << "max_count=" << max_count + 1 << "\n";  
 
system("pause");
return 0;
}
1
0 / 0 / 0
Регистрация: 08.10.2019
Сообщений: 10
10.10.2019, 18:10  [ТС] 5
Всё работает, благодарю ♥
0
10.10.2019, 18:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.10.2019, 18:10
Помогаю со студенческими работами здесь

Получить количество отрицательных членов последовательности и число членов принадлежащих отрезку
дано натуральное n и целые a1...an. Получить количество отрицательных членов последовательности и...

Получить количество отрицательных членов последовательности и число членов, принадлежащих отрезку
Дано натуральное n и целые a1...an. Получить количество отрицательных членов последовательности и...

Определить количество элементов в самой длинной подпоследовательности из подряд идущих нулей
Помогите, пожалуйста, решить! Очень надо, но не знаю как их решать! 1. В любой последовательности...

Найти длину самой длинной возрастающей подпоследовательности в массиве
Вводится массив. Найти в нем длину самой длинной возрастающей подпоследовательности.


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

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