М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Rufa77
Rufa77
18.08.2022 19:35 •  Информатика

На с++ реализуйте алгоритм бинарного поиска. входные данные в первой строке входных данных содержатся натуральные числа n и k (0nk100000). во второй строке n элементов первого массива, отсортированного по возрастанию, а в третьей строке – k элементов второго массива. элементы обоих массивов - целые числа, каждое из которых по модулю не превосходит 109 выходные данные требуется для каждого из k чисел вывести в отдельную строку "yes", если это число встречается в первом массиве, и "no" в противном случае. примеры входные данные 10 5 1 2 3 4 5 6 7 8 9 10 -2 0 4 9 12 выходные данные no no yes yes no

👇
Ответ:
ilya493
ilya493
18.08.2022
//g++  5.4.0

#include <iostream>
#include <vector>
using namespace std;

template<class Iter, class T>
bool bin_s(const Iter begin, const Iter end, const T& val)
{
    Iter i = std::lower_bound(begin, end, val);

    if (i != end && !(val < *i))
        return true; 
    else
        return false;
}

int main()
{
    size_t N, M;
    cin >> N >> M;
    vector<int> v1(N);
    vector<int> v2(M);
   
    for (size_t i = 0; i < N; ++i) 
            cin >> v1[i];

    for (size_t i = 0; i < M; ++i) 
    {
        cin >> v2[i];
        if ( bin_s(v1.begin(), v1.end(), v2[i]) ) 
            cout << "YES" << endl;
        else 
            cout << "NO" << endl;
    }
}
4,4(85 оценок)
Открыть все ответы
Ответ:
topghalya228
topghalya228
18.08.2022
1) F=Av(¬A&B)
По закону дистрибутивности раскроем скобки
(Av¬A)&(AvB)
Av¬A = 1, значит остаётся AvB

2) F =A&(¬AvB)
По тому же закону раскрываем скобки
(A&¬A)v(A&B)
A&¬A = 0, значит остаётся A&B

3. (AvB)&(¬BvA)&(¬CvB)
По закону склеивания (AvB)&(¬BvA) = A , получается, что выражение принимает вид
A&(¬CvB)
Можно раскрыть скобки, получим
A&¬C v A&B

4) F =(1v(AvB))v((AC)&1) 
Скобка (1v(AvB)) = 1, так как 1 v ЧТОУГОДНО = 1
Получаем выражение
1v((AC)&1) = 1, так как 1 v ЧТОУГОДНО = 1
ответ 1
4,5(32 оценок)
Ответ:
pavlovaalina453
pavlovaalina453
18.08.2022

Всё делать не буду, потому что долго..

Задание 1:

Условие

Варианты:

1) +1

2) *2

63 и больше - победа

1 куча - 5 камней,  2 куча S камней [1,57]

1 номер:

63 - 5 = 58

а) S ∈ [29.57]

Петя увеличивает бОльшую кучу в два раза и побеждает

б) Допустим, что Петя сглупил и сходил 29+1=30, тогда в s куче 30 камней. Ваня умножает эту кучу в два раза и в сумме получает 60+5=65 камней, и побеждает так.

2 номер:

Здесь нужно рисовать либо дерево, либо таблицу.

S = 27

"первая картинка"

3 номер делается точно также как и второй, просто от 27 прибавляй по очереди (28,29,30) пока не выйдет что Ваня побеждает либо с первого, либо со второго хода


Решить эти на выигрышные стратегии. любым удобным вам желательно покороче. мне нужно решение, потому
4,8(89 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ