Хафлайфхаки - Парадокс дня рождения

Представьте, что у вас есть набор уникальных шариков с номерами от 1 до n. Ваша задача - расставить их в виде деревьев (см. условие по ссылке) так, чтобы для каждого шарика все шарики слева были меньше, а справа - больше. Сколько разных деревьев можно создать?
Представьте, что вы гуляете по лесу, где каждое дерево - это особенная структура с ветвями-указателями. Вам нужно обойти все деревья в строгом порядке: сначала осмотреть левую ветку, потом сам ствол, и только затем правую ветку.
Представьте, что у вас есть ряд чисел: 1, 2, 1, 4, 1. Нам нужно найти все тройки подряд идущих чисел, где сумма первого и третьего числа равна ровно половине среднего числа. Например, в тройке [1,4,1] сумма первого и третьего (1+1=2) равна половине среднего(4/2=2). Это и есть наша искомая тройка!
Представьте, что у вас есть строка цифр, например "25525511135", и нужно вставить точки так, чтобы получился правильный IP-адрес (4 числа от 0 до 255, без ведущих нулей). Как найти все возможные варианты?
Представьте, что у вас есть цепочка вагонов поезда, где каждый вагон пронумерован. Некоторые номера повторяются подряд. Ваша задача — отцепить все вагоны, у которых есть "близнецы", оставив только уникальные номера. Например: [1,2,3,3,4,4,5] → [1,2,5]
Пусть мы нашли старую карту сокровищ с цифрами вместо букв. Каждая цифра или пара цифр соответствует букве алфавита (1=A, 2=B,..., 26=Z). Проблема в том, что некоторые цифры можно читать по-разному! Например, "12" можно прочитать как "1 2" (AB) или "12" (L). А если встретится "0" в начале, как в "06", то такое послание вообще нельзя прочитать
Представьте, что у вас есть все числа от 1 до 13. Давайте разделим их на группы по сумме их цифр. Например, число 10 (1+0=1) попадет в одну группу с числом 1. Число 11 (1+1=2) окажется в группе с числом 2. Теперь посмотрим, в каких группах больше всего чисел. Оказывается, таких групп целых четыре! Давайте разберемся, как это посчитать.
Представьте, что у вас есть несколько игрушек. Сколько разных групп из них можно собрать? Давайте научимся находить все возможные комбинации, даже если игрушки повторяются. Это как волшебный мешок, из которого можно доставать разное количество предметов.
Представь, что у тебя есть волшебная лестница, где каждая ступенька — это число. Но есть одна хитрость: переходя со ступеньки на ступеньку, ты можешь менять только одну цифру в её номере.Так работает код Грея — особый способ записывать числа, где каждое следующее отличается от предыдущего ровно на одну цифру.
Представьте, что у вас есть два ряда кубиков с числами, оба ряда уже выложены по порядку от меньшего к большему. Первый ряд (nums1) имеет свободные места в конце (нули), а второй ряд (nums2) полностью заполнен. Ваша задача - аккуратно переложить все кубики из второго ряда в первый, сохраняя общий порядок.
Представьте, что у вас есть слово, например "КОТ". Вы можете разрезать его на части и перемешать: "КО" + "Т" можно оставить как есть или поменять местами - получится "ТКО". Потом каждую часть снова можно разрезать и перемешать. Задача - понять, можно ли из одного слова получить другое, используя такие разрезания и перемешивания.
Представьте, что у вас есть ряд игрушек:Мишка (1-й в ряду), Кукла (2-я), Машинка (3-я), Машинка (4-я), Машинка (5-я), Кукла (6-я), Мишка (7-й). Нужно найти все пары одинаковых игрушек, где если умножить их места в ряду, получится чётное число (k=2). Найти такие пары.
Дан исходный список: 1 -> 4 -> 3 -> 2 -> 5 -> 2 и число x = 3. Разделить на два списка. Меньше 3: 1 -> 2 -> 2. Больше/равно 3: 4 -> 3 -> 5
Задача поиска максимального прямоугольника, состоящего только из единиц в бинарной матрице, кажется простой только на первый взгляд. Основная сложность заключается в том, что прямоугольник может быть произвольного размера и расположения, что делает полный перебор всех возможных вариантов крайне неэффективным для матриц большого размера.
Учитывая массив целых чисел heights, представляющих высоту столбца гистограммы, где ширина каждого столбца равна 1. Ввернуть площадь наибольшего прямоугольника в гистограмме. Внимание! Посмотрите примеры гистограмм задачи!
В задаче нужно, учитывая сортированный связанный список, удалить все дубликаты так, чтобы каждый элемент встречался только один раз . Вернуть также отсортированный связанный список .
У вас есть список чисел, который сначала был отсортирован по возрастанию (например, [1,2,3,4,5]), но потом его "повернули" в каком-то месте. Например, после поворота он может выглядеть как [3,4,5,1,2]. В таком списке нужно найти заданное число (target).
Дан целочисленный массив nums, отсортированный в неубывающем порядке , удалить некоторые дубликаты на месте так, чтобы каждый уникальный элемент встречался не более двух раз . Относительный порядок элементов должен оставаться прежним .
Представьте что есть сетка (матрица или двумерный массив), с буквой в каждом элементе. Вам даётся слово "ABCCED" и нужно определить входит ли это слово в сетку. Нужно учесть, что слово может идти не только по-горизонтали