лови решение, допилил....#include <iostream>#include <vector>#include <string>using namespace std;int main(){ /* Детский сад: id - номер детского сада; toylist - список игрушек в детском саду */ struct house { unsigned id; vector<unsigned> toylist; }; /* Игрушка: id - уникальный номер игрушки; name - название игрушки */ struct toy { unsigned id; string name; }; // Объявляем необходимые переменные vector<house> houses; vector<toy> toys; toy c_toy; house c_house; vector<unsigned> t_list; // Заполняем массив игрушек char ch='y'; unsigned toy_id=1; string toy_name; do { cout <<toy_id <<"-я игрушка: "; getline(cin, toy_name); c_toy.id=toy_id; c_toy.name=toy_name; toys.push_back(c_toy); cout <<"Добавить ещё одну игрушку? (y/n): "; cin >>ch; cin.ignore(); if((ch=='y') || (ch=='Y')) toy_id++; } while((ch=='y') || (ch=='Y')); // Выводим на экран список всех игрушек for(unsigned i=0; i<toys.size(); ++i) { cout <<"Игрушка " <<toys[i].id <<" - " <<toys[i].name <<endl; } // Заполняем данные по детским садам unsigned house_id=1; unsigned toy_num; do { cout <<house_id <<"-й детский сад. Введите номера игрушек: " <<endl; // Заполняем детский сад игрушками do { cin >>toy_num; t_list.push_back(toy_num); cout <<"Добавить еще? (y/n): "; cin >>ch; cin.ignore(); } while((ch=='y') || (ch=='Y')); c_house.id=house_id; c_house.toylist = t_list; t_list.clear(); houses.push_back(c_house); cout <<"Добавить ещё детский сад? (y/n): "; cin >>ch; if((ch=='y') || (ch=='Y')) house_id++; } while((ch=='y') || (ch=='Y')); // Выводим данные по всем детским садам for(unsigned i=0; i<houses.size(); ++i) { cout <<" Детсад √" <<houses[i].id <<" - игрушки: "; for(unsigned j=0; j<houses[i].toylist.size(); ++j) cout <<houses[i].toylist[j] <<" "; cout <<endl; } // Ищем игрушки, которые есть во всех детских садах unsigned t; bool founded = false; vector<unsigned> t1, t2; for(unsigned i=0; i<toys.size(); i++) { t=toys[i].id; for(unsigned j=0; j<houses.size(); j++) { for(unsigned k=0; k<houses[j].toylist.size(); k++) { if(t==houses[j].toylist[k]) founded = true; } if(founded) t1.push_back(t); founded = false; } unsigned h=houses.size(); if(t1.size()==h) t2.push_back(t); t1.clear(); } cout <<"Игрушки, которые есть во всех детских садах:" <<endl; for(unsigned i=0; i<t2.size(); ++i) for(unsigned j=0; j<toys.size(); ++j) if(t2[i]==toys[j].id) cout <<t2[i] <<" (" <<toys[j].name <<"), "; cout <<endl; // Ищем игрушки, которых нет ни в одном детском саду t1.clear(); t2.clear(); founded=false; for(unsigned i=0; i<toys.size(); i++) { t=toys[i].id; for(unsigned j=0; j<houses.size(); j++) { for(unsigned k=0; k<houses[j].toylist.size(); k++) { if(t==houses[j].toylist[k]) founded = true; } if(!founded) t1.push_back(t); founded = false; } unsigned h=houses.size(); if(t1.size()==h) t2.push_back(t); t1.clear(); } cout <<"Игрушки, которых нет ни в одном детском саду:" <<endl; for(unsigned i=0; i<t2.size(); ++i) for(unsigned j=0; j<toys.size(); ++j) if(t2[i]==toys[j].id) cout <<t2[i] <<" (" <<toys[j].name <<"), "; cout <<endl; return 0;}Тестовый прогон:1-я игрушка: БарабанДобавить ещё одну игрушку? (y/n): y2-я игрушка: Кукла БарбиДобавить ещё одну игрушку? (y/n): y3-я игрушка: ВертолетДобавить ещё одну игрушку? (y/n): y4-я игрушка: КонструкторДобавить ещё одну игрушку? (y/n): y5-я игрушка: Железная дорогаДобавить ещё одну игрушку? (y/n): y6-я игрушка: ФлейтаДобавить ещё одну игрушку? (y/n): y7-я игрушка: СлонДобавить ещё одну игрушку? (y/n): y8-я игрушка: СамосвалДобавить ещё одну игрушку? (y/n): y9-я игрушка: Кран Добавить ещё одну игрушку? (y/n): y10-я игрушка: Пожарная машинаДобавить ещё одну игрушку? (y/n): nИгрушка 1 - БарабанИгрушка 2 - Кукла БарбиИгрушка 3 - ВертолетИгрушка 4 - КонструкторИгрушка 5 - Железная дорогаИгрушка 6 - ФлейтаИгрушка 7 - СлонИгрушка 8 - СамосвалИгрушка 9 - КранИгрушка 10 - Пожарная машина1-й детский сад. Введите номера игрушек: 1Добавить еще? (y/n): y2Добавить еще? (y/n): y3Добавить еще? (y/n): y4Добавить еще? (y/n): y5Добавить еще? (y/n): nДобавить ещё детский сад? (y/n): y2-й детский сад. Введите номера игрушек: 2Добавить еще? (y/n): y3Добавить еще? (y/n): y4Добавить еще? (y/n): nДобавить ещё детский сад? (y/n): y3-й детский сад. Введите номера игрушек: 1Добавить еще? (y/n): y2Добавить еще? (y/n): y4Добавить еще? (y/n): y5Добавить еще? (y/n): nДобавить ещё детский сад? (y/n): y4-й детский сад. Введите номера игрушек: 2Добавить еще? (y/n): y3Добавить еще? (y/n): y4Добавить еще? (y/n): y5Добавить еще? (y/n): y1Добавить еще? (y/n): y6Добавить еще? (y/n): nДобавить ещё детский сад? (y/n): n Детсад √1 - игрушки: 1 2 3 4 5 Детсад √2 - игрушки: 2 3 4 Детсад √3 - игрушки: 1 2 4 5 Детсад √4 - игрушки: 2 3 4 5 1 6 Игрушки, которые есть во всех детских садах:2 (Кукла Барби), 4 (Конструктор), Игрушки, которых нет ни в одном детском саду:7 (Слон), 8 (Самосвал), 9 (Кран), 10 (Пожарная машина), Для закрытия данного окна нажмите <ВВОД>...