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

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

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

С++ последовательность пар чисел - C++

29.02.2012, 16:55. Просмотров 523. Ответов 2
Метки нет (Все метки)

Помогите,пожалуйста, написать программу!!!Учитывая список пар чисел, например, [(1,4), (5,2), (3, 7), (7,10)] найти самую длинную последовательность, упорядоченные : первый эл-т первой пары > первого эл-та со второй пар , второй эл-т 1-й пары < второго второй пары и т д
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.02.2012, 16:55     С++ последовательность пар чисел
Посмотрите здесь:

Дается последовательность. Найдите максимальное произведение среди всех пар этих чисел - C++
Е. Дается последовательность из N чисел. Найдите максимальное произведение среди всех пар этих чисел. Первая строка входного файла...

В неубывающей последовательности целых чисел найти количество пар чисел с заданной разностью "D" - C++
Помогите пожалуйста оптимизировать алгоритм, тут приведен простой перебор и на большом тесте программа работает очень долго. По заданию...

Сумма пар чисел - C++
Добрый день, сегодня я сделал то, к чему так долго готовился, сдал ЕГЭ по информатике. Но есть задание, которое я не смог осилить, самое...

Сортировка пар чисел - C++
Ребят, помогите с задачей : имеется матрица 2хN, из номеров пользователей и их очей. Например 1 2 3 4 5 6 7 8 9...

Поиск противоположных пар чисел - C++
Народ, помогите пожалуйста написать программу! Условие задачи следующее. Записать в файл последовательного доступа n целых чисел,...

Сложение пар чисел в одномерном массиве - C++
Здравствуйте. Подскажите пожалуйста как можно реализовать такого вида код: дан массив из 4 чисел, найти все возможные суммы чисел. Например...

Сделать игру по угадыванию пар чисел - C++
Условие. - Создается массив 4*4. 1122 3344 5566 7788 - Затем он перемешивается. - затем перемешанный показывается...

Обмен пар чисел в одномерном массиве - C++
Решить задачу: Дан массив. Нужно поменять местами значения во всех парах. Пара – два соседних элемента, такие, что меньший номер имеет...

Для встречающихся в заданном тексте пар расположенных символов указать, сколько раз встречается каждое из таких пар. - C++
Для встречающихся в заданном тексте пар расположенных символов указать, сколько раз встречается каждое из таких пар. #include&lt;stdio.h&gt; ...

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

Программа для отыскания заданного количества пар дружественных чисел - C++
Два числа называют дружественными, если каждое из них равно сумме всех делителей другого, кроме самого этого числа. Например, 220 и 284...

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gepar
1175 / 531 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
29.02.2012, 17:45     С++ последовательность пар чисел #2
Какое запутанное у вас задание, тем не менее решаемо оно, но скучное, писать код лень
1)Создаём пары (pair) и запихиваем их в какой-нибудь контейнер, вектор например.
2)Создаём два итератора и два счётчика упорядоченных пар, обнуляем их.
3)Ищем первые пары с вашим условием, итератор наводим на первую пару и бегаем циклом пока условие выполняется увеличивая при этом счётчик.
4)Ищем остальные пары, всё аналогично только используем второй итератор, в конце (когда условие перестаёт выполняться) сравниваем размеры счётчиков (где больше?).
5)Идём на шаг 4 и бегаем пока не закончатся элементы.
Надеюсь понятно объяснил.

Добавлено через 36 минут
Решил всё же написать код, но что-то он страшный получился ...
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
56
57
58
59
60
61
62
63
64
65
66
#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
    vector <pair <int,int> > vec;
    vec.push_back(make_pair(1,4));
    vec.push_back(make_pair(5,2));
    vec.push_back(make_pair(3,7));
    vec.push_back(make_pair(7,10));
    vec.push_back(make_pair(6,11));
    vec.push_back(make_pair(5,12));
 
    vector <pair <int,int> >::iterator it1, it2, temp, temp2;
    int count1, count2;
 
    it1=it2=vec.end();
    count1=count2=0;
 
    for(temp=vec.begin();temp<vec.end();temp++)
    {
        if(temp->first>(temp+1)->first && temp->second<(temp+1)->second)
        {
            if(it1==vec.end())
            {
                it1=temp;
                count1++;
                temp2=temp+1;
                while(temp2!=vec.end() && temp2->first>(temp2+1)->first && temp2->second<(temp2+1)->second)
                {
                    count1++;
                    temp2++;
                }
                temp=(temp2-1); //немного ускорит выполнение
            }
            else
            {
                it2=temp;
                temp2=temp+1;
                count2++;
                while(temp2!=vec.end() && temp2->first>(temp2+1)->first && temp2->second<(temp2+1)->second)
                {
                    count2++;
                    temp2++;
                }
 
                if(count2>count1)
                 it1=it2, count1=count2;
 
                it2=vec.end();
                count2=0;
                temp=(temp2-1);//немного ускорит выполнение
            }
        }
    }
    //самая длинный список пар:
    count1++;//чтобы вывести все элементы списка
    while(count1)
    {
        cout<<it1->first<<'\t'<<it1->second<<endl;
        it1++,count1--;
    }
 
    return 0;
}
Pussycat
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 4
29.02.2012, 19:29  [ТС]     С++ последовательность пар чисел #3
Спасибо большое=)

Добавлено через 36 минут
Программа кампилится,создается debug,а потом выдает ошибку(((
Yandex
Объявления
29.02.2012, 19:29     С++ последовательность пар чисел
Ответ Создать тему
Опции темы

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