Форум программистов, компьютерный форум, киберфорум
Наши страницы

рюкзак с элементами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Последовательность Фибоначчи для строк http://www.cyberforum.ru/cpp-beginners/thread108480.html
#include <conio.h> using namespace std; // переменные char *Ptr; char a, b, c; int i,n; // основная функция int main () { cout << "Vvedite n: \n";
C++ Арифметическое кодирование: верхняя и нижняя границы сошлись ну не совсем сошлись.. Что делать если верхняя и нижняя грарицы отличаються на 1?(происходить зацикливание) в статье Мастрюкова нашёл такое: "Сделаем следующее: удалим вторые по значи¬мости... http://www.cyberforum.ru/cpp-beginners/thread108470.html
строки, массивы символов C++
1) #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char command; char fname;
C++ С++ классы, строки, указатели
С++ только начал изучать, раньше учил Си - вроде все понятно было, но вот с новшествами данного языка как раз и возникли проблемы. Попытаюсь объяснить суть: 1) Составить класс, который будет...
C++ Найти количество элементов, наиболее часто встречающихся в массиве http://www.cyberforum.ru/cpp-beginners/thread108434.html
Найти кол-во элементов наиболее частых встречающихся в массиве. например массив: 123000 023400 023450 003456 0-не считается. очевидно тут 3. но как это найти? Найти надо не кол-во, а...
C++ Текстовый редактор от Захарова Так, от нечего делать захотелось создать свой текстовый редактор. Придумал даже код, но гдето есть две ошибки, так компилятор говорит. #include <iostream.h> #include <fstream.h> int main(void) {... подробнее

Показать сообщение отдельно
serega204
0 / 0 / 0
Регистрация: 21.03.2010
Сообщений: 1

рюкзак с элементами - C++

24.03.2010, 21:16. Просмотров 568. Ответов 0
Метки (Все метки)

Очень нужна помощь....нужно реализовать алгоритм решения задачи о рюкзаке с названием Meet-In-The-Middle на С++.....вот я псевдокод прикинул а на языке не получается сделать

1. Input: множество натуральных чисел {a1, ... , an} и натуральное число s
2. Output: e[i] принадлежит множеству {0,1}, 1<i<n, такие, что сумма e[i]*a[i] = s3.
3. Положить t = n/2
4. Создать таблицу(сумма e[i]*a[i] от 1 до t для (e[1],e[2],...,e[n]) которые принадлежат {0,1})
и отсортировать её по первой компоненте
5. для каждого (e[t+1],e[t+2],...,e[n]) которые принадлежат {0,1}
6. do вычислить L = s - сумма(e[i]*a[i]), сумма от i = t+1 до n
7. проверить с помощью бинарного поиска, является ли L первой компонентой какой-либо ячейки таблицы
8. if l = сумма (e[i]*a[i]) от i=1 до t
9. return (e[i],...e[n]) - решение
10. return (не существует решение)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.