Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.11.2016, 19:46   #1
fufayka
 
Регистрация: 09.11.2016
Сообщений: 6
По умолчанию Наибольшая общая подпоследовательность

Здравствуйте, помогите, пожалуйста, с задачей.

Даны две последовательности. Найти длину их наибольшей общей подпоследовательности (подпоследовательность — это то, что можно получить из данной последовательности вычеркиванием некоторых элементов).
Пример:
входные данные: 3
1 2 3
4
2 1 3 5
на выходе: 2

Не понимаю, в чем ошибка, не работает при тесте с огромными числами.

Код:
#include<stdio.h>

int main()
{
    int n, m, k, l, i, j, amount;
    int maxamount = 0;
    int a[1001]={0}, b[1001]={0};

    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);

    scanf("%d", &n);
    for(i = 0; i < n; i++)
        scanf("%d", &a[i]);
    scanf("%d", &m);
    for(i = 0; i < m; i++)
        scanf("%d", &b[i]);

    for(l = 0; l < n; l++){
        amount = 0;
        k = 0;
        for(i = l; i < n; i++){
            for(j = k; j < m; j++){
                if(a[i] == b[j]) {
                    k = j;
                    amount++;
                    if(amount > maxamount) maxamount = amount;
                    break;
                }
            }
        }
    }
    printf("%d", maxamount);
    return 0;
}
fufayka вне форума Ответить с цитированием
Старый 18.11.2016, 01:16   #2
GreenWizard
мальчик-помогай =)
Форумчанин
 
Регистрация: 16.09.2010
Сообщений: 522
По умолчанию

почитай
GreenWizard вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рефал. Наибольшая общая подстрока LifeWind Помощь студентам 1 03.06.2013 20:27
Подпоследовательность phoenix92 Помощь студентам 0 16.05.2011 17:56
найти подпоследовательность из подряд идущих элементов с наибольшей суммой на С++ aj_tramp Помощь студентам 2 12.12.2008 08:57
Найти самую длинную подпоследовательность состоящую только из нулей, С++ StudentPolitech Помощь студентам 7 28.11.2008 09:16