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

Турист ( найти ошибку ). Вариант задачи о рюкзаке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ HLA/OpenRTI http://www.cyberforum.ru/cpp-beginners/thread1496330.html
Народ, даже не знаю, туда ли пишу. Может кто работал с сабжем? Отзовитесь! Заранее спасибо.
C++ Нерекурсивная быстрая сортировка со стеком Вообщем написал программу, сортирует если не больше 42 элементов(( Объясните пожалуйста почему так. #include "stdafx.h" #include "iostream" #include <stack> using namespace std; void sort(int a, int n) { int mid, left, right, l, r; http://www.cyberforum.ru/cpp-beginners/thread1496324.html
Программа, использующая интернет C++
Появилась идея - дать программе доступ в интернет, как это реализовать, понятия не имею, помогите!
C++ А компилятор DevC++ поддерживает С++11?
А компилятор DevC++ поддерживает С++11? #include<iostream> using namespace std; int main() { double prices {4.99, 10.99, 6.87, 7.99, 8.49}; cout<<prices<<endl; return 0; }
C++ Заменить в исходной матрице столбцы с положительным элементом побочной диагонали на вектор х http://www.cyberforum.ru/cpp-beginners/thread1496285.html
вот моя программа , но без этого задания, прошу помощи. include "stdafx.h" #include <cmath> #include <stdio.h> #include<iostream> #include <iomanip> using namespace std; using std::cin; using std::cout; using std::endl;
C++ Не работает оператор "else" Добрый день, не работает "else" в функции main . В чём проблема? #include <iostream> using namespace std; int K, W, a1, b1, a2, b2, a3, b3; void check() { if (b1 + b2 >= K) { if (a1 + a2 <= W) подробнее

Показать сообщение отдельно
Melvil
 Аватар для Melvil
47 / 46 / 13
Регистрация: 20.05.2015
Сообщений: 246
09.07.2015, 20:21     Турист ( найти ошибку ). Вариант задачи о рюкзаке
Всем привет, решал задачу, но всё-таки где-то допустил ошибку, подскажите где. Спасибо.

Кликните здесь для просмотра всего текста
Гена собирается на туристический слет учеников своей школы. В своем классе он был назначен ответственным за палатки. У себя дома он нашел 3 палатки: первая из них весит a1 килограмм и вмещает b1 человек, вторая весит a2 килограмм и вмещает b2 человек, третья весит a3 килограмм и вмещает b3 человек.

В классе Гены K человек. Выясните, может ли он выбрать палатки так, чтобы в них все могли поместиться. При этом учитывайте, что выбранные палатки должны суммарно весить не более W килограмм.

Входные данные

Первая строка входного файла INPUT.TXT содержит два целых числа: K и W (1 <= K <= 15, 1 <= W <= 30). Вторая строка содержит шесть целых чисел: a1, b1, a2, b2, a3, b3 (1 <= a1, a2, a3 <= 10, 1 <= b1, b2, b3 <= 15).

Выходные данные

В выходной файл OUTPUT.TXT выведите YES, если палатки указанным образом выбрать можно, и NO в противном случае.


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
#include <iostream>
using namespace std;
int K, W, a1, b1, a2, b2, a3, b3;
void check()
{
    if (b1 + b2 >= K && a1 + a2 <= W)
    {
            cout << "YES" << endl;
            exit(0);
    }
    else if (b1 + b3 >= K && a1 + a3 <= W)
    {
            cout << "YES" << endl;
            exit(0);
    }
    else if (b2 + b3 >= K && a2 + a3 <= W)
    {   
            cout << "YES" << endl;
            exit(0);
    }
    else if (b1 + b2 + b3 >= K && a1 + a2 + a3 <= W)
    {   
            cout << "YES" << endl;
            exit(0);
    }
}
int main()
{
    cin >> K >> W;
    cin >> a1 >> b1 >> a2 >> b2 >> a3 >> b3;
    if (b1 + b2 + b3 >= K)
    {
        check();
    }
        cout << "NO" << endl;
        return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru