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

Вывести массив D, состоящий из тех элементов В, которых нет в С - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Читерский туториал) http://www.cyberforum.ru/cpp-beginners/thread341234.html
Думаю не я один несколько суток тому назад (а может и более) узнал о существовании данного ресурса: http://spacebar.fixmeplz.ru/ Небольшая предыстория: Некий тип наглой наружности решил "уделать"...
C++ Ссылки, стек Полистал форум, подобная тема уже была, но ответ был "генерируется ошибка на подобную ситуацию". В данном случае ошибки нет, в связи с этим вопрос: Что помещается в стек в данном случае и ссылку на... http://www.cyberforum.ru/cpp-beginners/thread341218.html
Переопределение оператора в классе C++
class String { char *mData; static const int c_size = 100; String(); String & operator+=(const String & s) { strcat(mData,s.mData); return *this; }
сравнивание переменной с массивом(чисел) C++
есть массив int mass = {1,2,3,4,5,6,7,8,9} как сравнить переменную с массивом?
C++ Преобразование строки в целое http://www.cyberforum.ru/cpp-beginners/thread341186.html
Может вопрос и глупый, но я все равно не догоняю... В функции что означает 3 параметр: char *_itoa( int value, char *str, int radix );
C++ Создание бота. Эмуляция клавиатуры, мыши. Попросили написать простенький бот для одной корейской онлайн игрушки. Сразу столкнулся с проблемой сабжа - игрушка защищена православным GameGuard'ом и напрочь игнорирует Keybd_event, sendkeys etc.... подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
11.08.2011, 21:52
Цитата Сообщение от _д_м_и_т_р_и_й_ Посмотреть сообщение
даны три одномерных массива (А,В,С). нужно вывести массив D, состоящий из тех элементов В, которых нет в С, и тех элементов С, которых нет в А. В дискретной математике это выглядит так: D=(B-C)+(C-A)
где + это знак объединения.
Умоляю, очень нужна программа. Заранее всем спасибо.
Если вы знаете стандартные алгоритмы, то это делается в одну строчку. Главное - чтобы результирующий массив D имел достаточную размерность, для хранения результирующих элементов.

Но сначала вам нужно отсортировать массивы.

C++
1
2
3
std::sort( A, A + k );
std::sort( B, B + l );
std::sort( C, C + m );
Здесь r, l, m - это обозначение размерности соответствующих массиивов.

Далее пишите одну строчку

C++
1
std::set_difference( C, C + m, A, A + k, std::set_difference( B, B + l, C, C + m, D ) );
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru