В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
ПАРРА
ПАРРА
25.07.2020 13:27 •  Информатика

Задание 1 Интерес представляют эффективные алгоритмы поиска вхождений подстроки в строку, то есть алгоритмы, быстро работающие для больших строк. Поэтому мы будем рассматривать в этой задаче случай, когда исходная строка представляет собой многократное повторение какой-то маленькой строки.

Например, рассмотрим строку «МАМА» и повторим её 3 раза. Получится строка «МАМАМАМАМАМА». В этой строке подстрока «АМА» встречается 5 раз: «МАМАМАМАМАМА», «МАМАМАМАМАМА», «МАМАMАМАМАМА», «МАМАМАМАМАМА», «МАМАМАМАМАМА».

ответьте на вопросы

Если строку «БАОБАБ» повторить 100 раз, то сколько раз в ней будет встречаться подстрока «БА»?

Если строку «РЕМАРКА» повторить 100 раз, то сколько раз в ней будет встречаться подстрока «АР»?

Если строку «АУАУОАУАУ» повторить 100 раз, то сколько раз в ней будет встречаться подстрока «АУАУ»?

Если строку «ОЙОЙ» повторить 100 раз, то сколько раз в ней будет встречаться подстрока «ЙОЙОЙ»?

Если строку «А» повторить 100 раз, то сколько в ней раз будет встречаться подстрока «A», повторённая 50 раз?

ответ на это задание запишите в виде пяти чисел, каждое число в отдельной строке — ответы на заданные вопросы именно в таком порядке. Если вы не можете найти ответ на какой-то из пяти вопросов, запишите в этой строке любое натуральное число.

решите очень надо

Показать ответ
Ответ:
Саняша69
Саняша69
21.11.2021 10:50
Код#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 зверьков. Каждый из них обладает характером, поэтому, если в клетке, где находится
0,0(0 оценок)
Ответ:
diiii2
diiii2
10.10.2022 04:46

использовать Черепаха

алг  

нач

вперед (60)

влево (65)

вперед (43)

вправо (20)

вперед (28)

вправо (45)

вперед (60)

вправо (90)

вперед (20)

вправо (90)

вперед (60)

влево (90)

вперед (20)

влево (65)

вперед (43)

вправо (65)

вперед (20)

вправо (45)

вперед (27)

вправо (45)

вперед (40)

вправо (45)

вперед (27)

влево (180)

вперед (27)

влево (45)

вперед (40)

вправо (90)

вперед (60)

вправо (45)

вперед (26)

вправо (20)

вперед (45)

влево (180)

вперед (45)

влево (155)

вперед (40)

вправо (45)

вперед (27)

влево (45)

вперед (40)

вправо (90)

вперед (39)

вправо (90)

вперед (40)

влево (90)

вперед (20)

влево (90)

вперед (40)

вправо (90)

вперед (39)

поднять хвост

вправо (90)

вперед (100)

опустить хвост

влево (45)

вперед (4)

влево (90)

вперед (4)

влево (90)

вперед (6)

влево (90)

вперед (4)

поднять хвост

кон

Объяснение:

Смотри картинку


Нужно составить алгоритм словника в кумире (черепаха)
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота