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

Задача о ранце - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычисление определенного интеграла функции y(x) численными методами прямоугольников и трапеций http://www.cyberforum.ru/cpp-beginners/thread1100227.html
Разработать компьютерную программу вычисления определенного интеграла функции y(x) численными методами прямоугольников и трапеций. В виде отдельных функций реализовать y(x), метод трапеций, метод...
C++ Рекурсивный алгоритм для вычисления выражения. Исправить ошибки в коде Доброго времени суток. Задача стоит такова: составить рекурсивны //--------------------------------------------------------------------------- #pragma hdrstop #include <tchar.h>... http://www.cyberforum.ru/cpp-beginners/thread1100146.html
C++ Создание комментариев для программы (рекурсия)
Ребята помогите разобраться с программою, она работает, но не могу понять как всё происходит y=x+3-e^-x. Хотя бы проставить комментарии! Например что такое с, что выполняют функции f и f1! Код:...
Игра Марио - найти ошибку в коде C++
Всем доброго времени суток. Вот взялся сделать платформер с помошью SFML. Написал код, чтобы персонаж двигался и прыгал. Компилятор выдаёт одну ошибку: line 83: class PLAYER' has no member named...
C++ Рекурсивная функция. Посчитать среднее арифметическое элементов массива http://www.cyberforum.ru/cpp-beginners/thread1100138.html
Нужно с помощью рекурсивной функции посчитать среднее арифметическое элементов массива.
C++ Вычисление наименьшего общего кратного заданной совокупности чисел Нужно написать программу для вычисления наименьшего общего кратного заданной совокупности чисел. Вот код на Паскале. Нужно на си. function Nod(a,b:integer):integer;{определение НОД двух чисел}... подробнее

Показать сообщение отдельно
salam
170 / 151 / 16
Регистрация: 10.07.2012
Сообщений: 748
19.02.2014, 12:47
например, эту задачу http://informatics.mccme.ru/mod/stat...apterid=3089#1
можно решать так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
struct thing {
    int wght, cost;
};
 
int main()
{
    int n, W;
    cin >> n >> W;
    vector<thing> t(n);
    vector<int> weight(W+1, -1);
    for(int i=0; i < n; ++i)
        cin >> t[i].wght;
    for(int i=0; i < n; ++i)
        cin >> t[i].cost;
    weight[0] = 0;
    for(int i=0; i < n; ++i)
        for(int j=W - t[i].wght; j >= 0; --j)
            if(weight[j] != -1)
                weight[j + t[i].wght] = max(weight[j + t[i].wght], weight[j] + t[i].cost);
    cout << *max_element(weight.begin(), weight.end()) << endl;
    return exit_scs;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru