lutokris, отредактируйте, пожалуйста, вопрос. Весь код должен быть в теге code (кнопка</> в редакторе). Тогда отступы будут нормальные, код не поедет и всякие символы не сожрутся.
Eugene, Без подробного описания, что код должен делать - нельзя сказать ничего про ошибки.
Потом, отформатируйте код нормально, пожалуйста. Вставьте в любую ide и там где-то в меню должен быть пункт про форматирование. У вас отступы много где кривые. открывающие скобки иногда пишут в конце предыдущей строки, иногда на новой строке. Но никогда в начале следующей строки.
bakdurak, Может тут в бенчмарке так и получается, из-за того, что все в кеше. Но вообще говоря, обращение к массиву должно быть медленнее сдвига. Вообще, качественные бенчмарки - дело сложное. По уму вам надо написать 2 функции и проверять их через, допустим, gbenchmark.
Научить программированию любого человека - вполне 100% гарантия
Ох и оптимист же вы. Есть люди, которым "не дано". Ну вот просто физически человек не может сопоставить даже элементарные действия с кодом. Перевести "сложите переменную a с переменной b и запишите в sum" в "sum = a+b;" они худо-бедно еще могут, но уже "пройдитесь циклом по элементам массива a и прибавьте каждый из них к переменной sum" - вообще никак. Отдельно цикл написать могут, прибавить a[0] к sum могут, но скомбинировать - слишком сложно. И это после полноценных курсов.
Еще можно в MyStack.h или MyStack.cpp сделать декларацию инстанцировки шаблона с нужным типом.
Например, добавьте: class MyStack<int>;
Это придется добавлять каждый раз, когда вы где-то будете использовать MyStack с другим типом.
Ничего не собирается, потому что, когда компилятор собирает MyStack.cpp, он не знает, с какими типами этот шаблон будет использоваться - потому что использования в других объектниках. Из main и хедера в другом объектнике компилятор генерит декларации с int. Но нигде их не реализует. Вот и вылезает ошибка линковки.
Dmitry Volkov, Похоже на шифр подстановки. Повторяющиеся куски, длины слов между запятыми... "," - похоже, пробел. "!" - в середине слова - какая-то буква. Про остальное ничего сказать не могу по этой маленькой строке. Русский или английский текст зашифрован даже не ясно пока.
Переведите весь файл в текст и подсчитайте сколько раз каждый символ встречается. По этой информации уже можно будет дальше судить. Погуглите статистику букв в словах на русском и английском и заменяйте самые частые буквы в шифре на них и смотрите, что получается.
rshruslan, Ну пройдитесь по ссылке из ответа на алгоритм. Там что-то типа оптимизированного перебора. Да, для 100 тегов может работать долго, а может и нет, если клик не очень много.
rshruslan, Смотрите, алгоритм работает с графом. Граф, это вершины и ребра между ними. Я вам уже сказал, что вершины - это ваши теги. Ребро есть между двумя несовместимыми тегами, там где у вас 0 в вашем json.
В алгоритме по ссылке написано:
удаляя из candidates и not вершины, не СОЕДИНЕННЫЕ с v
Т.е. вам надо как-то пройтись по всем вершинам, не соединенным с данной. Ну или уметь узнавать, соединены ли 2 данные вершины. Не соединены = нет ребра = совместимы.
Ну или явно постройте граф и запускайте алгоритм, или везде где идет работа с графом переводите это в ваши термины с тегами и совместимостью.
И я правильно понимаю, через данный алгоритм, я смогу собрать множество количество несовместных пар тегов?
Вы получите все максимальные наборы попарно несовместимых тегов. Такие, что к ним ничего добавить нельзя.
В вашем примере вы получите список "2005", "2016" и "XXXTENTACION". А так же множество других наборов. В моем примере с A,B,C,D,E вы получите и A,B,C и A,D,E.
rshruslan, Конечно. Надо только уметь получать все вершины, не соедененные с данной в графе. Т.е. те теги, которые совместимы с данным.
Быстрее будет, кончено, сначала преобразовать ваш json в двумерный массив - матрицу смежности. Ну или получить для каждого тега список совместимых с ним. Еще быстрее будет работать, если перенумеровать все теги и строить граф на номерах вершин, а не на строках-тегах.
Непонятен вопрос. Вам надо подобрать текст соответствующий заданной маске, чтобы он имел известный md5 хеш? Или вам надо подобрать текст, чтобы его хэш удовлетворял заданной маске?
</>в редакторе). Тогда отступы будут нормальные, код не поедет и всякие символы не сожрутся.