Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.92/26: Рейтинг темы: голосов - 26, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 20.12.2018
Сообщений: 10

Вывести слово YES, если массивы похожи, и слово NO в противном случае.

20.12.2018, 16:21. Показов 6034. Ответов 33
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Назовем два массива похожими, если они состоят из одних и тех же элементов (без учета кратности). По двум данным массивам выясните, похожие они или нет.

Формат входных данных

В первой строке содержится число N (1 ≤ N ≤ 100000) – размер первого массива. Во второй строке идет N целых чисел, не превосходящих по модулю 109 – элементы массива. Далее аналогично задается второй массив.

Формат выходных данных

Программа должна вывести слово YES, если массивы похожи, и слово NO в противном случае.

Пример
Входные данные Выходные данные
3 YES
1 7 9
4
9 7 7 1
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.12.2018, 16:21
Ответы с готовыми решениями:

Вывести слово yes, если строки совпадают, и слово no в противном случае
Входные данные Заданы 2 строки. Выходные данные Необходимо вывести слово yes, если строки совпадают, и слово no в противном...

Выведите слово YES, если число является точной степенью двойки, или слово NO в противном случае
Решите задачу, ИСПОЛЬЗУЯ РЕКУРСИВНУЮ ПОДПРОГРАММУ. Дано натуральное число N. Выведите слово YES, если число N является точной степенью...

Если количество слов нечетное, то удалить слово из середины строки, в противном случае вставить в строку слово «нет»
Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть...

33
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38226 / 21158 / 4314
Регистрация: 12.02.2012
Сообщений: 34,773
Записей в блоге: 14
18.08.2022, 08:17
Студворк — интернет-сервис помощи студентам
KSergey9, конечно, за ответы никто не платит. Про мотивацию других не скажу, а я решаю эти задачи для поддержания необходимой формы. Решение задач - лучший путь для изучения языка. И для расширения кругозора (в плане освоения новых языков). Я очень благодарен Форуму за эту возможность.
3
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
18.08.2022, 08:44
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Т.е. реальных задач на работе не хватает?
твои слова
И где в моих словах про IT ?
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38226 / 21158 / 4314
Регистрация: 12.02.2012
Сообщений: 34,773
Записей в блоге: 14
18.08.2022, 09:06
Tim977, Наталья8, Royal_X, programmer_08, приведенные решения с использованием библиотек - правильные, но "постные". Да, set здесь "самое то", а вызвать стандартную сортировку и unique - большого ума не надо дело нехитрое. Решение же "чисто на массивах" - честное, не не очень эффективное (если я верно его понял).

А вот если без стандартных библиотек? И с эффективностью, лучшей чем O(n2)?

Моя попытка (деревья поиска):

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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#include <iostream>
 
using namespace std;
 
class Cell
{
  public:
    int val;
    Cell * left;
    Cell * right;
    
    Cell (int x)
    {
        val=x;
        left=nullptr;
        right=nullptr;
    }
};
 
void addInTree(Cell *root, int v, int &sz)
{
    if (root->val == v) return;
 
    if (root->val > v)
    {
        if (root->left == nullptr)
        {
           sz++;    
           Cell *n = new Cell(v);        
           root->left=n;
        }
        else
           addInTree(root->left,v,sz);
        return;
    }
    else
    {
        if (root->right == nullptr)
        {
           sz++;    
           Cell *n = new Cell(v);        
           root->right=n;
        }
        else
           addInTree(root->right,v,sz);
        return;
    }
}
 
Cell *arrInTree(int *arr, int sarr, int &stree)
{
    Cell* root=new Cell(arr[0]);
    stree=1;
    for (int i=1; i<sarr; i++) addInTree(root,arr[i],stree);
    return root;
}
 
void treeToArr(Cell *root, int *arr, int &idx)
{
    if (root==nullptr) return;
    treeToArr(root->left,arr,idx);
    arr[idx++]=root->val;
    treeToArr(root->right,arr,idx);
}
 
void delTree(Cell *root)
{
    if (root == nullptr) return;
    delTree(root->left);
    delTree(root->right);
    delete root;
}
 
void compArr(int *x, int sx, int *y, int sy)
{
    int sztx;
    Cell *tx=arrInTree(x,sx,sztx);
    
    int szty;
    Cell *ty=arrInTree(y,sy,szty);
    
    if (sztx != szty)
    {
        cout << "No" << endl;
        delTree(tx);
        delTree(ty);
        return;
    }
    
    int px=0;
    int *xx = new int[sztx];
    treeToArr(tx,xx,px);
    
    int py=0;
    int *yy = new int[szty];
    treeToArr(ty,yy,py);
    
    delTree(tx);
    delTree(ty);
 
    for (int i=0; i<sztx; i++)
        if (xx[i] != yy[i])
        {
           cout << "No" << endl;
           delete [] xx;
           delete [] yy;
           return;
        }
        
    cout << "Yes" << endl;     
    delete [] xx;
    delete [] yy;
    
}
 
int main()
{
    int x[] = {7,0,3,4,6,-1,12,0,6,6,12};
    int y[] = {7,0,12,4,6,-1,12,3,11,6,12,3,3};
     
    compArr(x,sizeof(x)/sizeof(int), y,sizeof(y)/sizeof(int));
 
    return 0;
}
3
18.08.2022, 10:06

Не по теме:

Цитата Сообщение от alexu_007 Посмотреть сообщение
Если же не решать за него задачи в процессе обучения - то он сольется намного раньше, не дотянув до курсовой/диплома.
И не заплатит денег за курсовой.
Толковый бизнес-план! :)

0
 Аватар для programmer_08
687 / 444 / 209
Регистрация: 18.10.2020
Сообщений: 1,606
18.08.2022, 11:51
Catstail, ну да, две полные проверки массивов - явно не самое эффективное решение (всё-таки сложность в худшем случае O(2*n*m))... но чёрт меня подери, как же у вас сложно!)
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38226 / 21158 / 4314
Регистрация: 12.02.2012
Сообщений: 34,773
Записей в блоге: 14
18.08.2022, 11:56
Цитата Сообщение от programmer_08 Посмотреть сообщение
как же у вас сложно!
- так это изнанка простоты использования стандартных библиотек. Внутри библиотек тоже все непросто!
0
 Аватар для SomniPhobia
602 / 439 / 137
Регистрация: 22.11.2017
Сообщений: 1,407
18.08.2022, 12:30
KSergey9, programmer_08, Kuzia domovenok, Наталья8, Royal_X, Catstail, я по факту работаю программистом на предприятии. По званию - менеджер проектной группы по развитию бизнес системы Евраза (служба БСЕ). В обязанности менеджера входит в основном различного рода управления проектами, поиска ресурсов, источников информации, организация производства, реализация идей и многое другое. Меня же взяли как программиста в службу
После школы мечтал стать программистом, но родители настояли и насильно зачислили меня на производственного конструктора-технолога. Скрипя зубами, 4 года отучился в институте. По окончании, решил воплотить свою мечту в жизнь. Я пошёл в тот же институт на прикладную информатику в очное отделение. И не жалею. Я стал программистом. Да, пришлось много свободного времени посвятить программированию
Когда я только начал изучать язык C++ и занялся практикой было море ошибок. Решение я искал на форуме. Где находил много интересных людей. Зачастую форумчане не только подсказывали решение, но и вместе со мной ковыряли закрома C++. Например, что находится в массиве на -3 индексе. Я понимаю, что это зависит от компилятора. Но было интересно. С годами практики ошибок становилось всё меньше и меньше. Теперь уже можно без компилятора, сниппетов писать код. Теперь, если долго пишешь код, то он пишется уже сам, без компьютера в голове. Идёшь по улице и видешь в мыслях решение того или иного проекта
Подрабатываю после работы репетитором
Я на форуме, чтобы помочь людям справиться с задачами, чтобы послушать критику более опытных программистов, чтобы скоротать время, найти друзей, познать что-то новое из языка C++. И нельзя не упомянуть - поддержание мышцы, которая пишет код в актуальном состоянии, её прокачка
Люди, занимайтесь программированием, это полезно для мозгов, как спорт для тела
1
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
18.08.2022, 12:33
Цитата Сообщение от programmer_08 Посмотреть сообщение
как же у вас сложно!
Цитата Сообщение от Catstail Посмотреть сообщение
Внутри библиотек тоже все непросто!
programmer_08,
Все просто, когда уже знаешь. До этого момента все кажется сложно и мудрено.
Поэтому нужно расширять знания элементарных структур данных и методов (алгоритмов) работы с ними.
Тогда переходишь к более сложным, композициям таких структур и алгоритмов.
OMNES ingeniosa est simplex
.
1
 Аватар для Наталья8
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
18.08.2022, 12:54
Catstail,
Я иногда того же мнения. Если желание есть, и спать за столом не хочеться.
Хорошо для своего морального удовлетворения.
Только в вашем коде ни кто ни чего не поймёт.
Что тоже не есть хорошо.
А кто и читать не станет.
==========
Я пробовал на каком то сайте посчитать свой IQ.
Бросил... Нету у меня ни какого ай кью.
Если выпить три кружки кофе, то может и появиться.
Кофеин...
1
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38226 / 21158 / 4314
Регистрация: 12.02.2012
Сообщений: 34,773
Записей в блоге: 14
18.08.2022, 12:57
Цитата Сообщение от Наталья8 Посмотреть сообщение
Только в вашем коде ни кто ни чего не поймёт.
- почему? Он не особо сложный.
0
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
18.08.2022, 13:20
Цитата Сообщение от SomniPhobia Посмотреть сообщение
Я на форуме, чтобы помочь людям справиться с задачами, чтобы послушать критику более опытных программистов, чтобы скоротать время, найти друзей, познать что-то новое из языка C++. И нельзя не упомянуть - поддержание мышцы, которая пишет код в актуальном состоянии, её прокачка
Вы либо не читаете что я пишу, либо я пишу крайне непонятно.

Если бы на форуме были вопросы "что будет, если написать a[-2]" - то у меня бы даже вопроса не возникло "а зачем". Это отличные вопросы.

Меня ж другое совершенно поразило: в "вопрос" копируется тупо условие из задачника; даже вопрос никак не формулируется человеком, вообще ничего "от автора". Тупо скопированное задание.

И через час..два вдруг постятся готовые ответы, с готовым рабочим кодом.
Как так? зачем? почему?!

Вот о чем был мой вопрос.

Ответ я на него получил, спасибо.
0
Нарушитель
Эксперт функциональных языков программированияЭксперт С++
6339 / 3072 / 1054
Регистрация: 01.06.2021
Сообщений: 11,798
18.08.2022, 16:48
Цитата Сообщение от KSergey9 Посмотреть сообщение
Меня ж другое совершенно поразило: в "вопрос" копируется тупо условие из задачника; даже вопрос никак не формулируется человеком, вообще ничего "от автора". Тупо скопированное задание.
И через час..два вдруг постятся готовые ответы, с готовым рабочим кодом.
Как так? зачем? почему?!
Если сравнивать форум с популярным сайтом "Переполнение стека", то на этом форуме слишком низкие требования к содержанию тем, которые создаются. Например, там если новая тема хотя бы частично затрагивает уже имеющую на сайте тему, то она тотчас помечается как дубль и сразу же закрывается. Порой даже приходится долго доказывать, что закрытая тема не дубль, а содержит новую информацию. На этом же форуме понятие дубля несколько иное: дублем является повторная тема от одного и того же автора. Т.е. если группа студентов гуановуза из 10 человек создаст 10 одинаковых вопросов, то модераторы пропустят все эти темы. А форумные Иксперты наоборот будут рады повторяющимся нубским заданиям. Да и как замечаю, Иксперты с радостью решают такие задания и вместе с этим не прочь поиздеваться над авторами этих тем. Иногда найдется и тот, кто порекомендует воспользоваться поиском по форуму, тем не менее, удалять дублирующую тему никто не станет.
И вот мы дошли до главного вопроса: "Какой подход лучше? Нужно ли запрещать публикацию дублирующих тем или надо всё оставить как есть?".
Чтобы ответить на этот вопрос, сперва нужно указать хотя бы на основные плюсы и минусы каждого из этих подходов:
Главным плюсом удаления дублирующей темы (как это реализовано на сайте "Переполнение стека") это то, что легко можно найти интересующую тему через поиск и увидеть в этой теме все существующие ответы, отсортированные по полезности и качеству. В то же время, на этом форуме, если открыть какую-нибудь тему, содержащую ответ, ты не можешь быть уверенным, что этот ответ является самым лучшим, ведь, возможно в какой-нибудь другой повторяющейся теме содержатся более качественные ответы. И вот тебе придется анализировать и сравнивать ответы во всех похожих темах.
С другой стороны, ленивые предпочтут этот форум, т.к. им не нужно воспользоваться поиском, чтобы убедиться, что на похожий вопрос уже когда-то был дан ответ. Они сразу же могут опубликовать свой вопрос, не боясь, что он может оказаться дублем.
0
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
18.08.2022, 20:18
Royal_X,
я, конечно, вскользь упоминал идентичность вопросов, т.е. дублирование тем.
Но основное-то моё удивление было вызвано отнюдь не этим фактом.

Цитата Сообщение от Royal_X Посмотреть сообщение
Какой подход лучше?
Вы дальше снова пишете про дублирования, а я таки про своё.
Увы, я знаю несколько форумов рунета разных тематик, которые полностью умерли из-за жестких рамок качества и неповторяемости, так скажем. И даже при том, что в среднем качество оставшегося материала на них выше, однако они абсолютно необитаемы.
В отличии от мест, где обитаемость хорошая и, соответственно, рекламы продается для какого-то оправдания существования.
Время рассудило.
0
19.08.2022, 12:20

Не по теме:


Хахах)) Тоже иногда думал об этом пока сам не погрузился и не понял, может такое не у всех, но лично у меня, я прохожу курсы по программированию, и иногда не приходит идея алгоритма либо не могу найти ошибку, иду гуглить, чаще всего готовое не нахожу, но нахожу отрывки попыток либо алгоритмов либо самого кода, сам беру и дорешиваю. Остается небольшое чувство долга, по этому после того как решил, выкладываю.

Это я сказал про все в целом, если конкретно про эту задачу, то я сначала поискал, ничего не нашел, лег спать, утром проснулся, пришла идея, решил задачу и вспомнил, что кто-то тоже просил ее на формуме выдвинул просто)

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.08.2022, 12:20

Вывести k-ю степень s, если она существует и слово undefined в противном случае.
Пусть имеем строку s и целое число k. Если k - неотрицательно, то k-ой степенью строки s называется строка, которая представляет из себя...

Требуется вывести «Да», если можно составить слово, и «Нет», в противном случае
Чтобы отдохнуть от компьютера на весенних каникулах, Арман предложил ребятам сыграть в слова. Правила просты: из букв исходного слова нужно...

Строка: Вывести k-ю степень строки s, если она существует и слово undefined в противном случае.
Пусть имеем строку s и целое число k. Если k - неотрицательно, то k-ой степенью строки s называется строка, которая прествавлаяет из себя...

вывести на друк слово "Одинаковые" если эти массивы полностью совпадают,и слово "Разные" в противоположном случае.
Создать два символьных массива по 12 элементов , и вывести на друк слово &quot;Одинаковые&quot; если эти массивы полностью совпадают,и слово...

Выведите слово YES, если сообщение A является «предком» сообщения B, и NO – в противном случае
Дано количество сообщений на некотором форуме (N натуральное, не более 1000). Также таблица, в которой указано какие сообщения на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru