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

Проверить, является ли один массив подмножеством другого - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отличия в работе new и malloc http://www.cyberforum.ru/cpp-beginners/thread838677.html
Выполняла задание на определение максимального объема памяти, который может выделить программа под трехмерный массив. В первый раз программа была написана с использованием malloc/free, второй раз с использованием new/delete. Результаты очень отличались: в первом случае максимальный размер массива был 600, во втором около 12000, к тому же второй вариант работал раз в 5 быстрее. Чем может быть...
C++ Запуск exe файла в графическом режиме Помогите пожалуйста как сделать так чтобы по нажатию клавиши запускался определенный ехе файл у меня есть 5 ехе-шников и при нажатии на кнопку 1-5 должен запускаться определенный файл , но я не знаю как вызвать его Написал код#include <graphics.h> #include <conio.h> int main(int argc, char **argv, char **env) { int k; http://www.cyberforum.ru/cpp-beginners/thread838667.html
Списки. подскажите нубу C++
Карта содержит две группы вопросов. Первая содержит сведения: возраст, пол , вид спорта(теннис футбол бег) Вторая содержит вопрос о самочувствии после нагрузки спортсмена. оно может являться либо ХОРОШЕЕ(ХОР), либо УДОВЛЕТВОРИТЕЛЬНОЕ(УДОВ) *Написать программу которая: 1) обеспечивает вывод карт и формирует линейный список 2)на основе анализа карт выдает след. вопросы:а)сколько мужчин,...
C++ Проверка вводимых значений
Стоит задача не допустить ввода значений помимо чисел(0..9), точки(".") и "+" или "-". При условии, что используется данная функция: void input() { cout<<" * umnogenie \n / delenie \n + summa \n - raznost' \n ^ vozvedenie v stepen'"<<endl; cout<<"vvedite celuy chast' pervogo kompleksnogo chisla "; cin>>n1; cout<<"vvedite mnimuy chast' pervogo kompleksnogo chisla "; cin>>m1;...
C++ Не считываются пробелы из файла http://www.cyberforum.ru/cpp-beginners/thread838660.html
Допустим пытаюсь считать из файла "ghf fk ff 123 1", а выводится/считывается "ghffkff1231" В чем может быть проблема? #include <iostream> #include <fstream> using namespace std; int razmer () {fstream f; f.open ("in.txt", ios::in);
C++ Обработка исключений Здравствуйте, мне нужно проанализировать ведённый номер телефона методом обработка исключений. Подскажите пожалуйста, почему я не могу мой код void tel_num (double n) { cout << "Please enter telephone number (+371)"; cin >> n; cout << endl; cout << "(+371)" << n << endl; подробнее

Показать сообщение отдельно
SamBars
 Аватар для SamBars
13 / 13 / 8
Регистрация: 06.10.2015
Сообщений: 88
14.09.2016, 23:54     Проверить, является ли один массив подмножеством другого
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <vector>
using namespace std;
 
void add(int*, int);
void print(int*, int);
int* Search(int*, int*, int, int);
 
const int size_s = 3;
const int size_b = 10;
 
int main()
{
    int* small = new int[size_s];
    int* big = new int[size_b];
 
    add(small, size_s);
    add(big, size_b);
 
    print(small, size_s);
    print(big, size_b);
 
    cout << Search(small, big, size_s, size_b) << endl;
 
    return 0;
}
 
int* Search (int* small, int* big, int size_s, int size_b)
{
    vector<int*> v;
    for (size_t i = 0; i < size_s; i++)
    {
        for(size_t j = 0; j < size_b; j++)
        {
            if (small[i] == big[j])
            {
                v.push_back(&big[j]);
                i++;
                continue;
            }
            
            else if (v.size() == size_s)
            {
                break;
            }
 
            else
            {
                v.resize(0);
                continue;
            }
            
        }
        
    }
    if (v.size() == size_s)
    {
        return v[0];
    }
 
    else
    {
        return NULL;
    }
}
 
void add(int* small, int size_s)
{
    srand(time(NULL));
 
    for (size_t i = 0; i < size_s; i++)
    {
        small[i] = rand() % 4;
    }
 
 
}
 
void print(int* small, int size_s)
{
    for (size_t i = 0; i < size_s; i++)
    {
        cout << small[i] << " ";
    }
 
    cout << endl;
}
 
Текущее время: 19:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru