seymurxalafov05
?>

У Арсения есть n зверьков. Каждый из них обладает характером, поэтому, если в клетке, где находится i-й зверек, есть не больше ci зверьков, то его агрессивность будет ai, а если больше, то его агрессивность будет bi (ai≤bi Также у Арсения есть клетка прочностью s, которая выдержит зверьков, суммарная агрессивность которых не больше s. Арсению выяснить, какое наибольшее число зверьков он может хранить в клетке одновременно. Входные данные В первой строке через пробел заданы два целых числа n и s (1≤n≤105, 0≤s≤109). В следующих n строках задана характеристика животных числами ai, bi и ci (0≤ai≤bi≤109, 1≤ci≤n). Выходные данные Выведите единственное число — наибольшее количество животных, которое Арсений может одновременно хранить в клетке. Примеры входные данные 2 6 2 4 1 2 4 2 выходные данные 2 входные данные 4 10 3 4 2 3 5 3 1 1 1 2 7 3 выходные данные 3

Информатика

Ответы

Yurevna_Kharkchinov1302
Код#include <iostream>#include <utility>#include <numeric>#include <vector>class Beast {    int trigger;    double aggression;    double rage_aggression;public:    Beast() = default;    Beast(int trigger, double aggression, double range_aggression)    : trigger(trigger), aggression(aggression), rage_aggression(range_aggression)    { }    Beast(const Beast&) = default;    Beast(Beast&&) = default;    Beast& operator=(const Beast&) = default;    Beast& operator=(Beast&&) = default;    [[nodiscard]] double calculate_aggression(unsigned long amount) const {        return amount > trigger ? rage_aggression : aggression;    }    void ReadFrom (std::istream& is) {        is >> aggression >> rage_aggression >> trigger;    }    void WriteTo(std::ostream &os) const {        os << aggression << " " << rage_aggression << " " << trigger;    }};std::istream& operator >>(std::istream &is, Beast &cls) {    cls.ReadFrom(is);    return is;}std::ostream& operator <<(std::ostream &os, const Beast &cls) {    cls.WriteTo(os);    return os;}class Cage {    double durability;    std::vector<Beast> container;public:    explicit Cage(double durability, std::vector<Beast> container)    : durability(durability), container(std::move(container))    { }    Cage(const Cage&) = default;    Cage(Cage&&) = default;    Cage& operator=(const Cage&) = default;    Cage& operator=(Cage&&) = default;    [[nodiscard]] double calculate_aggressive() const {        auto amount = container.size();        if (amount == 0) return 0;        return std::accumulate(container.begin(), container.end(), 0.0,        [amount](double total_aggressive, const Beast & beast){            return total_aggressive + beast.calculate_aggression(amount);        });    }    [[nodiscard]] bool is_it_normal() const {        auto aggressive = calculate_aggressive();        return aggressive <= durability;    }    [[nodiscard]] int get_capacity() const {        return container.size();    }    [[nodiscard]] double get_durability() const {        return durability;    }};template <typename T>void subsetsUtil(std::vector<T>& A, std::vector<std::vector<T> >& res,                 std::vector<T>& subset, int index){    res.push_back(subset);    for (int i = index; i < A.size(); i++) {        // include the A[i] in subset.        subset.push_back(A[i]);        // move onto the next element.        subsetsUtil(A, res, subset, i + 1);        // exclude the A[i] from subset and triggers        // backtracking.        subset.pop_back();    }}template <typename T>std::vector<std::vector<T>> P(std::vector<T>& A){    std::vector<T> subset;    std::vector<std::vector<T>> res;    int index = 0;    subsetsUtil(A, res, subset, index);    return res;}int main () {    int n, s;    Beast noname{};    std::vector<Beast> set_of_beasts;    std::cin >> n >> s;    for (auto i = 0; i < n; ++i) {        std::cin >> noname;        set_of_beasts.push_back(noname);    }    auto selections = P(set_of_beasts);    std::vector<Cage> variants;    std::transform(selections.begin(), selections.end(), std::back_inserter(variants), [s](std::vector<Beast> &selection){        return Cage(s, selection);    });    std::vector<Cage> true_variants;    std::copy_if(variants.begin(), variants.end(), std::back_inserter(true_variants), [](Cage& x) {return x.is_it_normal();});    auto the_best_of_the_best_variant = *std::max_element(true_variants.begin(), true_variants.end(), [](Cage & s1, Cage & s2){        return s1.get_capacity() < s2.get_capacity();    });    std::cout << the_best_of_the_best_variant.get_capacity();    return 0;}
У Арсения есть n зверьков. Каждый из них обладает характером, поэтому, если в клетке, где находится
У Арсения есть n зверьков. Каждый из них обладает характером, поэтому, если в клетке, где находится
ВостриковаСтародубцева1980
Использовать источники открытого огня (спички, зажигаприносить на уроки легковоспламеняющиеся вещества (лаки, краски, порох и т.п.); лки, петарды и др.); работать с электроприборами, имеющими повреждения корпуса или изоляции соединительных проводов; вставлять в отверстие приборов посторонние предметы; приносить и самовольно подключать какое-либо оборудование; производить самовольное переключение разъёмов оборудования; вставлять в отверстие приборов посторонние предметы; работать с электроприборами, имеющими повреждения корпуса или изоляции соединительных проводов;
anna241273
В данном тексте встречается не так много различных прописных букв – это все буквы, входящие в заголовок (Ш, А, Л, Т, Й, Б, О) и первые буквы строк (С, В, Н). Какая из них может встречаться один раз. Не трудно заметить, что это не Ш и не Б (они встречаются слишком часто), а также не С, не В и не Н (они встречаются в стихотворении попарно), значит, это какая-то из оставшихся букв заголовка и не трудно догадаться, что О.
Три раз встречается строчная буква и. Три раза встречается прописная буква А.   Десять раз встречается строчная буква е.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

У Арсения есть n зверьков. Каждый из них обладает характером, поэтому, если в клетке, где находится i-й зверек, есть не больше ci зверьков, то его агрессивность будет ai, а если больше, то его агрессивность будет bi (ai≤bi Также у Арсения есть клетка прочностью s, которая выдержит зверьков, суммарная агрессивность которых не больше s. Арсению выяснить, какое наибольшее число зверьков он может хранить в клетке одновременно. Входные данные В первой строке через пробел заданы два целых числа n и s (1≤n≤105, 0≤s≤109). В следующих n строках задана характеристика животных числами ai, bi и ci (0≤ai≤bi≤109, 1≤ci≤n). Выходные данные Выведите единственное число — наибольшее количество животных, которое Арсений может одновременно хранить в клетке. Примеры входные данные 2 6 2 4 1 2 4 2 выходные данные 2 входные данные 4 10 3 4 2 3 5 3 1 1 1 2 7 3 выходные данные 3
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

YuRII1236
sadkofamily61
milkamilka1998
pak1998378
Bolshakova Shigorina
donertime8
nordwokintos4
Sacharov84
okutihamv
Пономаренко
sedalex
PushkinaKurnosov984
airlineskozlova69
Олег86
Tamara