Python Задачи

Тренажер по решению задач Python с ИИ-помощником

1. Merge Sorted Array

Алгоритмы Два указателя Уровень 1 Новая задача

Необходимо объединить два отсортированных массива `nums1` и `nums2` в один отсортированный массив, расположенный внутри массива `nums1`. Входные параметры: * `nums1`: Массив целых чисел, представля...

Сумма двух чисел

Алгоритмы Основы Уровень 1 Новая задача

Необходимо разработать функцию, которая складывает два заданных числа и возвращает результат сложения. Входные данные: * `a`: Целое число (int) – первое число для сложения. * `b`: Целое число (in...

2. Remove Element

Алгоритмы Два указателя Уровень 1 Новая задача

Задача заключается в удалении всех элементов из массива `nums`, равных заданному значению `val`. В результате нужно изменить массив `nums` "in-place", то есть изменить его непосредственно, и вернуть ...

Максимум из списка

Алгоритмы Списки Уровень 1 Новая задача

Найти наибольшее число в заданном списке целых чисел. Входные данные: `numbers`: Список (`list`) целых чисел. Выходные данные: Максимальное значение из списка `numbers`. Если список пуст, возвращает...

3. Remove Duplicates from Sorted Array

Алгоритмы Два указателя Уровень 1 Новая задача

Задача заключается в том, чтобы преобразовать отсортированный массив таким образом, чтобы сохранить только уникальные элементы и вернуть длину этого массива с уникальными элементами. Входные данные: ...

4. Remove Duplicates from Sorted Array II

Алгоритмы Два указателя Уровень 1 Новая задача

Необходимо изменить массив, содержащий отсортированные целые числа, так чтобы в результирующем массиве не было повторяющихся элементов, но каждый элемент мог встречаться не более двух раз. Входные да...

5. Majority Element

Алгоритмы Два указателя Уровень 1 Новая задача

Найти в массиве чисел элемент, который встречается более чем у половины всех элементов массива. Входные данные: `nums`: Список (list) целых чисел. Выходные данные: Целое число, представляющее больши...

6. Rotate Array

Алгоритмы Жадные алгоритмы Уровень 1 Новая задача

Необходимо реализовать функцию, которая циклически сдвигает элементы массива `nums` вправо на `k` позиций. Входные данные: * `nums`: Массив целых чисел (список). * `k`: Целое число, представляюще...

7. Best Time to Buy and Sell Stock

Алгоритмы Математика Уровень 1 Новая задача

Задача заключается в определении максимальной прибыли, которую можно получить от покупки и продажи акций по заданному списку цен. Входные данные: `prices`: Список ценовых значений акций (int), где ка...

8. Best Time to Buy and Sell Stock II

Алгоритмы Математика Уровень 1 Новая задача

Необходимо определить максимальную прибыль, которую можно получить от совершения нескольких сделок с покупкой и продажей акций. При этом можно покупать и продавать акцию несколько раз. Входные данны...

9. Jump Game

Алгоритмы Жадные алгоритмы Уровень 1 Новая задача

Задача заключается в определении, возможно ли достичь последнего элемента массива прыжками заданной длины. Входные данные: * `nums`: Список целых чисел, представляющих длину прыжка из каждой позици...

10. Jump Game II

Алгоритмы Жадные алгоритмы Уровень 1 Новая задача

Необходимо определить минимальное количество прыжков, чтобы достичь последнего элемента массива `nums`. Входные данные: `nums`: Список целых чисел, представляющих длины каждого прыжка из данной пози...

11. H-Index

Алгоритмы Два указателя Уровень 1 Новая задача

Необходимо вычислить h-индекс исследователя, который представляет собой максимальное количество публикаций, имеющих хотя бы такое же количество цитирований. На вход подается список `citations` (списо...

12. Insert Delete GetRandom O(1)

Алгоритмы Хэш-таблицы Уровень 1 Новая задача

Необходимо реализовать структуру данных `RandomizedSet`, которая поддерживает операции добавления (`insert`), удаления (`remove`) и получения случайного элемента (`getRandom`) с гарантированной сложно...

13. Product of Array Except Self

Алгоритмы Динамическое программирование Уровень 1 Новая задача

Необходимо реализовать функцию, которая для данного массива целых чисел `nums` создает новый массив, где каждый элемент представляет собой произведение всех элементов исходного массива `nums`, кроме с...

14. Gas Station

Алгоритмы Жадные алгоритмы Уровень 1 Новая задача

Необходимо определить, возможно ли построить круговой маршрут по заправкам, используя заданное количество бензина и затраты на прохождение каждого участка пути. Входные данные: * `gas`: Список цел...

15. Candy

Алгоритмы Два указателя Уровень 1 Новая задача

Необходимо распределить заданное количество конфет между детьми, чтобы минимизировать общее количество раздатваемых конфет. Каждому ребенку должна быть дана хотя бы одна конфета. Входные данные: `ra...

16. Trapping Rain Water

Алгоритмы Общее Уровень 1 Новая задача

Задача: Вычислите объем воды, который может быть заперт между высотами столбиков, представленных в виде массива. Входные данные: `height`: Список (или массив) целых чисел, представляющих высоту каждо...

17. Roman to Integer

Алгоритмы Бектрекинг Уровень 1 Новая задача

Преобразовать заданное римское число (строку) в его эквивалентное целое числовое представление. Входные данные: `s`: Строка, представляющая римское число, состоящая из символов 'I', 'V', 'X', 'L', 'C...

18. Integer to Roman

Алгоритмы Строки Уровень 1 Новая задача

Преобразовать заданное целое число в его эквивалент в римской цифре. Входные данные: `num` - Целое число (int) от 1 до 3999 включительно. Выходные данные: Строка (str), представляющая собой римское ...

19. Length of Last Word

Алгоритмы Строки Уровень 1 Новая задача

Необходимо определить длину последнего слова в данной строке текста. На вход подается строка `s` (string) – это исходный текст, содержащий одно или несколько слов, разделенных пробелами. Функция до...

20. Longest Common Prefix

Алгоритмы Стек и очередь Уровень 1 Новая задача

Необходимо найти самый длинный префикс, который является общим для всех входных строк. Входные данные: `strs`: Список строк (List[str]), представляющих собой массив строк. Выходные данные: Строка (s...

21. Reverse Words in a String

Алгоритмы Стек и очередь Уровень 1 Новая задача

Необходимо написать функцию, которая переворачивает порядок слов в заданной строке. Входные данные: `s`: Строка (string), содержащая одну или несколько слов, разделенных пробелами. Выходные данные: ...

22. Zigzag Conversion

Алгоритмы Строки Уровень 1 Новая задача

Необходимо преобразовать заданную строку в зигзагообразный паттерн, где символы располагаются по строкам, чередуя направления движения. Входные данные: * `s`: Строка (string) для преобразования. * ...

23. Find the Index of the First Occurrence in a String

Алгоритмы Стек и очередь Уровень 1 Новая задача

Напишите функцию, которая ищет первое вхождение заданной подстроки (needle) в строке (haystack). Входные данные: * `haystack`: Строка, в которой производится поиск. * `needle`: Подстрока, которую...

24. Text Justification

Алгоритмы Строки Уровень 1 Новая задача

Необходимо реализовать функцию, которая выравнивает заданный текст по фиксированной ширине, разбивая его на строки. Каждая строка должна содержать максимальное количество слов, чтобы общая ширина текс...

25. Valid Palindrome

Алгоритмы Строки Уровень 1 Новая задача

Необходимо проверить, является ли данная строка палиндромом. Строка считается палиндромом, если она читается одинаково слева направо и справа налево, игнорируя регистр символов и не являющиеся буквами...

26. Is Subsequence

Алгоритмы Два указателя Уровень 1 Новая задача

Необходимо определить, является ли строка `s` подпоследовательностью строки `t`. Входные данные: * `s`: Строка (string) - потенциальная подпоследовательность. * `t`: Строка (string) - строка, в ...

27. Two Sum II - Input Array Is Sorted

Алгоритмы Два указателя Уровень 1 Новая задача

Необходимо найти два числа в отсортированном массиве, сумма которых равна заданному целевому значению `target`. Входные данные: `numbers`: Отсортированный массив целых чисел. `target`: Целое число, п...

28. Container With Most Water

Алгоритмы Два указателя Уровень 1 Новая задача

Необходимо найти максимальную площадь, которую можно вместить в контейнер, образованный двумя вертикальными стенок высотой, заданными массивом чисел. Входные данные: * `height`: Список (или массив)...

29. 3Sum

Алгоритмы Общее Уровень 1 Новая задача

Необходимо найти все уникальные тройки чисел (три разных числа) из заданного массива, сумма которых равна нулю. Входные данные: * `nums`: Список целых чисел (`list[int]`). Выходные данные: * Спи...

30. Minimum Size Subarray Sum

Алгоритмы Скользящее окно Уровень 1 Новая задача

Необходимо найти минимальную длину подмассива исходного массива `nums`, сумма элементов которого больше или равна заданному значению `target`. Входные данные: * `nums`: Список целых чисел. * `tar...

adj список смежности

Алгоритмы Списки Уровень 2 Новая задача

Необходимо реализовать функцию, которая принимает список ребер графа и создает его представление в виде списка смежности. Входные данные: * `edges`: Список кортежей, где каждый кортеж представляет ...

aiohttp сервер

Алгоритмы Общее Уровень 2 Новая задача

Создайте асинхронный HTTP сервер с использованием библиотеки `aiohttp`. Сервер должен обрабатывать GET-запросы по корневому пути `/` и возвращать ответ "ok". Входные данные: Нет входных данных для фу...

Проверка палиндрома

Алгоритмы Строки Уровень 2 Новая задача

Необходимо проверить, является ли данная строка палиндромом. Палиндром – это строка, которая при переворачивании остается неизменной (игнорируя пробелы и регистр букв). Входные данные: `s`: Строка (s...

asyncio http клиент

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать функцию, которая асинхронно отправляет HTTP-запрос к указанному URL и возвращает текстовое содержимое ответа сервера. Функция принимает один параметр: * `url` (str): Строка...

bfs кратчайший путь невзвешенный

Алгоритмы Структуры данных Уровень 2 Новая задача

Необходимо найти кратчайший путь между двумя заданными вершинами (узлами) в невзвешенном графе, используя алгоритм поиска в ширину (BFS). В результате работы программы должен быть возвращен список ве...

contextmanager

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать контекстный менеджер `open_file` для безопасного и удобного открытия файлов с автоматическим закрытием после использования. Функция `open_file` принимает один аргумент: `path` ...

dataclass

Алгоритмы ООП Уровень 2 Новая задача

Создайте класс `Point`, который представляет точку на плоскости. Входные данные: * `x`: Целое число (int), координата X точки. * `y`: Целое число (int), координата Y точки. Выходные данные: * ...

det2x2

Алгоритмы Общее Уровень 2 Новая задача

Необходимо вычислить детерминант квадратной матрицы 2x2. Детерминант является характеристикой матрицы и используется для различных математических задач. На вход подается список списков `m`, представл...

enum

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать структуру данных типа перечисление (enum) для представления ограниченного набора именованных констант. Входные данные: * `name`: Строка, представляющая имя константы enum. *...

fastapi

Алгоритмы Общее Уровень 2 Новая задача

Создайте простое веб-приложение (API) с использованием FastAPI, которое отвечает на запросы к корневому URL (`/`). При получении запроса приложение должно вернуть JSON-ответ, подтверждающий успешность...

flask

Алгоритмы Общее Уровень 2 Новая задача

Создайте простое веб-приложение с использованием Flask, которое отображает строку "ok" при обращении к корневому URL (`/`). Входные данные: Нет входных данных для функции `home()`. Выходные данные: ...

gcd lcm

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать функции для вычисления наибольшего общего делителя (GCD) и наименьшего общего кратного (LCM) двух целых чисел. Входные данные: * `a`: Целое число (int). * `b`: Целое число ...

kosaraju scc

Алгоритмы Общее Уровень 2 Новая задача

**Задача: Обнаружение сильных связных компонент (SCC)** Необходимо определить сильные связные компоненты в заданном ориентированном графе. Сильная связная компонента – это подграф, где можно найти пу...

logging

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать функцию для записи сообщений о событиях в программе с возможностью указания уровня важности сообщения. Функция принимает два параметра: * `message` (str): Текстовое сообщение...

lru_cache

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать кэш с использованием алгоритма "последний использованный" (LRU), чтобы оптимизировать вычисления чисел Фибоначчи. Задача заключается в вычислении n-го числа Фибоначчи и сохране...

multiprocessing

Алгоритмы Общее Уровень 2 Новая задача

Создайте параллельный процесс для выполнения заданной функции. Задача заключается в создании нового процесса, который независимо от основного процесса выполняет указанную функцию. Вход: * `worker`...

namedtuple

Алгоритмы Общее Уровень 2 Новая задача

Создайте функцию, которая генерирует namedtuple на основе заданного имени и списка названий полей. Входные данные: * `typename`: Строка – имя, которое будет присвоено создаваемому namedtuple (напри...

property

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать свойство `age` для класса `User`, которое будет предоставлять доступ к внутреннему атрибуту возраста пользователя. Входные данные: * `age`: Целое число (int), представляющее ...

pydantic

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать модель данных `User` с использованием библиотеки Pydantic для валидации и преобразования информации о пользователе. Входные данные: * `id`: Целое число (int) – уникальный иде...

pytest

Алгоритмы Общее Уровень 2 Новая задача

Написать набор тестов для функции `add`, которая складывает два целых числа. Необходимо проверить корректность работы функции при различных входных значениях. Входные данные: * `a`: Целое число (in...

requests

Алгоритмы Общее Уровень 2 Новая задача

Напишите функцию, которая получает содержимое веб-страницы по заданному URL и возвращает информацию о полученных данных. Входные данные: * `url` (string): URL веб-страницы для получения данных. ...

rle

Алгоритмы Общее Уровень 2 Новая задача

## Задача: RLE-кодирование и декодирование строк Необходимо разработать функции для сжатия (кодирования) строк методом Run-Length Encoding (RLE), который заменяет повторяющиеся последовательности сим...

rot13

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать функцию, которая шифрует или расшифровывает строку по алгоритму ROT13. ROT13 – это метод шифрования, который заменяет каждую букву на букву, находящуюся на 13 позиций дальше в ...

sqlite

Алгоритмы Общее Уровень 2 Новая задача

Создайте программу, которая взаимодействует с базой данных SQLite, хранящейся в памяти, для выполнения операций CRUD (Create, Read, Update, Delete). Входные параметры: * `conn`: Объект соединения с...

threading

Алгоритмы Общее Уровень 2 Новая задача

Создайте поток, который выводит на консоль строку "hi". Входные параметры: Нет входных параметров. Выходные данные: Функция не возвращает никакого значения (возвращает `None`). Сообщение "hi" должн...

two sum

Алгоритмы Общее Уровень 2 Новая задача

Необходимо найти два различных числа в заданном массиве `nums`, которые при сложении дают указанное значение `target`. Входные данные: * `nums`: Список целых чисел (`list[int]`). * `target`: Цело...

typing protocol

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать протокол `Reader`, который позволяет читать строки из источника заданной длины. Входные данные: * `Reader`: Объект, реализующий протокол `Reader`. * `n`: Целое число (int)...

анаграммы

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, являются ли две строки анаграммами друг друга. Две строки считаются анаграммами, если они содержат одинаковые буквы в одинаковом количестве, независимо от порядка этих букв и ре...

бинарный поиск

Алгоритмы Алгоритмы Уровень 2 Новая задача

Необходимо реализовать алгоритм бинарного поиска для определения, присутствует ли заданное число `x` в отсортированном массиве целых чисел `arr`, и если да, то вернуть его индекс (смещение от начала м...

быстрая сортировка

Алгоритмы Алгоритмы Уровень 2 Новая задача

Необходимо реализовать функцию для сортировки списка целых чисел по возрастанию с использованием алгоритма быстрой сортировки. Входные данные: `arr`: Список (или массив) целых чисел, который необходи...

валидность email

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать функцию для проверки корректности формата адреса электронной почты, переданного в качестве строки. Функция принимает один параметр: `email` (str) – строка, представляющая собой...

31. Longest Substring Without Repeating Characters

Алгоритмы Скользящее окно Уровень 2 Новая задача

Необходимо найти длину самой длинной подстроки входной строки `s`, состоящей из уникальных символов. Входные данные: `s`: строка (string) – исходная строка, для которой нужно найти самую длинную подс...

генерация пароля

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать функцию для генерации случайного пароля определенной длины. Пароль должен содержать символы из букв (верхнего и нижнего регистров), цифр и специальных символов. Функция принима...

32. Substring with Concatenation of All Words

Алгоритмы Общее Уровень 2 Новая задача

Необходимо найти все начальные индексы в заданной строке `s`, где можно образовать конкатенацию всех слов из списка `words`. Входные данные: * `s`: Строка, в которой нужно искать подстроку (тип: st...

гласные в строке

Алгоритмы Общее Уровень 2 Новая задача

Напишите программу, которая подсчитывает количество гласных букв (a, e, i, o, u, а, е, ё, и, о, у, ы, э, ю, я) в заданной строке. Входные данные: `text`: Строка (string), содержащая текст для анализа...

33. Minimum Window Substring

Алгоритмы Скользящее окно Уровень 2 Новая задача

Задача: Найти самую короткую подстроку строки `s`, которая содержит все символы из заданной строки `t`. Входные данные: * `s`: Строка, в которой нужно найти подстроку (тип: строка). * `t`: Строка...

два указателя пересечение списков

Алгоритмы Общее Уровень 2 Новая задача

Необходимо найти общие элементы двух списков, учитывая возможность их повторения и количество этих элементов в каждом исходном списке. Входные данные: * `a`: Список (list) - первый список элементов...

34. Valid Sudoku

Алгоритмы Поиск и сортировка Уровень 2 Новая задача

Необходимо проверить, является ли заданная частично заполненная сетка судоку валидной. Входные данные: `board`: Двумерный массив (список списков) целых чисел, представляющий собой судоку размером 9x...

двусвязный список

Алгоритмы Списки Уровень 2 Новая задача

Необходимо реализовать структуру данных – двусвязный список – позволяющую эффективно добавлять, удалять и изменять элементы списка, перемещаясь как вперед, так и назад по списку. Функция принимает од...

35. Spiral Matrix

Алгоритмы Матрицы Уровень 2 Новая задача

Необходимо обнулить все элементы матрицы, расположенной в виде спирали, и вернуть их в порядке обхода этой спирали. На вход принимается матрица `matrix`, представленная в виде двумерного списка (спис...

двухуказатели

Алгоритмы Общее Уровень 2 Новая задача

Необходимо найти два числа в отсортированном массиве, сумма которых равна заданному целевому значению. Входные данные: * `arr`: Отсортированный массив целых чисел (list). * `target`: Целое число...

36. Rotate Image

Алгоритмы Матрицы Уровень 2 Новая задача

Необходимо реализовать функцию, которая поворачивает заданную матрицу (представленную в виде двумерного массива) на 90 градусов по часовой стрелке. На вход подается двумерный массив целых чисел `matr...

деджстра

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать алгоритм поиска кратчайшего пути от заданной начальной вершины до всех остальных вершин графа, избегая повторного посещения уже обработанных вершин. Это модификация алгоритма Д...

37. Set Matrix Zeroes

Алгоритмы Матрицы Уровень 2 Новая задача

Задача: Необходимо изменить элементы матрицы так, чтобы все строки и столбцы, содержащие хотя бы один ноль, были заполнены нулями. Входные данные: Функция принимает на вход двумерный массив (список с...

декоратор

Алгоритмы Общее Уровень 2 Новая задача

Задача: Создание декоратора для логирования вызовов функций. Необходимо разработать декоратор, который автоматически добавляет функциональность логирования каждого вызова функции, к которой он примен...

38. Game of Life

Алгоритмы Матрицы Уровень 2 Новая задача

Реализовать игру "Жизнь" Конвея, где состояние каждой клетки сетки изменяется согласно правилам игры после каждого поколения. Игра должна обновлять состояние всех клеток сетки на следующем поколении,...

диаметр дерева

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить длину наибольшего диаметра дерева, представленного в виде графа. Диаметр дерева – это максимальная длина пути между любыми двумя узлами дерева. Входные данные: `tree`: Словарь (...

39. Ransom Note

Алгоритмы Хэш-таблицы Уровень 2 Новая задача

Необходимо определить, возможно ли составить строку `ransomNote` из символов строки `magazine`. Входные данные: * `ransomNote`: Строка, содержащая буквы, которые нужно составить. * `magazine`: С...

40. Isomorphic Strings

Алгоритмы Хэш-таблицы Уровень 2 Новая задача

Задача: Определить, являются ли две строки изоморфными друг другу. Изоморфные строки – это такие строки, где каждый символ в первой строке соответствует ровно одному символу во второй строке, и наобор...

изоморфные строки

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, являются ли две строки `s` и `t` изоморфными. Изоморфные строки – это строки, между которыми можно установить взаимно однозначное соответствие (биекцию) символов. Входные данны...

41. Word Pattern

Алгоритмы Хэш-таблицы Уровень 2 Новая задача

Необходимо проверить, является ли строка `pattern`, состоящая из слов, точным соответствием строке `s`, также состоящей из слов. Строка `s` разделена на слова пробелами. Входные данные: * `pattern...

кадане макс подмассив

Алгоритмы Списки Уровень 2 Новая задача

Необходимо найти максимальную сумму элементов в любом подмассиве (непрерывной последовательности) внутри заданного массива чисел. Входные данные: `nums`: Список целых чисел (`list[int]`), представляю...

42. Valid Anagram

Алгоритмы Два указателя Уровень 2 Новая задача

Задача: Определить, являются ли две строки анаграммами друг друга. Анаграммы состоят из одинаковых букв, но в разном порядке. Входные данные: * `s`: Строка (string) - первая строка для проверки. * ...

карацуба

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать алгоритм умножения двух целых чисел методом Карацубы. Задача заключается в эффективном вычислении произведения двух чисел путем рекурсивного деления и небольших умножений. Функ...

43. Group Anagrams

Алгоритмы Хэш-таблицы Уровень 2 Новая задача

Необходимо сгруппировать переданные строки (слова) так, чтобы все анаграммы оказались в одной группе. В результате должна быть сформирована структура данных, где каждая группа содержит слова, являющи...

магический квадрат

Алгоритмы Общее Уровень 2 Новая задача

Задача: Магический квадрат Необходимо определить, является ли заданная матрица (сетка) магическим квадратом. Магический квадрат – это квадратная таблица чисел, где сумма элементов в каждой строке, ст...

44. Two Sum

Алгоритмы Хэш-таблицы Уровень 2 Новая задача

Необходимо найти два числа в заданном массиве `nums`, сумма которых равна целевому значению `target`. Входные данные: * `nums`: Массив целых чисел. * `target`: Целое число – искомая сумма. Выход...

монте карло pi

Алгоритмы Общее Уровень 2 Новая задача

Оцените значение числа Пи (π) с помощью метода Монте-Карло. Этот метод заключается в генерации случайных точек в квадрате и подсчете доли точек, попавших внутрь вписанного в этот квадрат круга. Вход...

45. Happy Number

Алгоритмы Хэш-таблицы Уровень 2 Новая задача

Задача заключается в определении, является ли данное число "счастливым". Входные данные: целое число `n` (int). Выходные данные: логическое значение `True`, если число счастливое, и `False` в против...

мосты (тарьян)

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить все мосты в заданном связном графе. Мост – это ребро, удаление которого приводит к разделению графа на две несвязные компоненты. На вход подается словарь `g`, представляющий гра...

46. Contains Duplicate II

Алгоритмы Два указателя Уровень 2 Новая задача

Необходимо определить, содержит ли массив `nums` дубликаты значений, которые находятся друг от друга не более чем на расстояние `k`. Входные данные: * `nums`: Список целых чисел. * `k`: Целое чис...

очередь

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать структуру данных "очередь" (Queue), которая следует принципу FIFO (First-In, First-Out). Очередь должна поддерживать добавление элементов в конец и удаление из начала. Входные...

47. Longest Consecutive Sequence

Алгоритмы Хэш-таблицы Уровень 2 Новая задача

Необходимо найти длину самой длинной последовательности чисел, где каждое соседнее число отличается на 1, в заданном массиве целых чисел. Входные данные: `nums`: Список (list) целых чисел. Выходные ...

палиндром строки

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, является ли данная строка палиндромом после предварительной обработки (удаления неалфавитно-цифровых символов и приведения к нижнему регистру). Входные данные: * `s`: Строка ...

48. Summary Ranges

Алгоритмы Математика Уровень 2 Новая задача

Необходимо сгенерировать список интервалов из отсортированного массива чисел. Входные данные: `nums`: Список целых чисел, отсортированных по возрастанию. Выходные данные: Список строк, представляющи...

палиндром числа

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, является ли данное целое число палиндромом. Палиндром – это число, которое при переворачивании не меняет своего значения (например, 121). Входные данные: * `x: int` - Целое ...

49. Merge Intervals

Алгоритмы Общее Уровень 2 Новая задача

Необходимо объединить все перекрывающиеся интервалы в списке в один отсортированный список непересекающихся интервалов. Входные данные: Список интервалов, представленных в виде списков или кортежей, ...

пересечение списков без дубликатов

Алгоритмы Общее Уровень 2 Новая задача

Необходимо найти общие элементы в двух списках целых чисел и вернуть новый список, содержащий только уникальные значения из этого пересечения. На вход подаются два списка целых чисел `a` и `b`. Функ...

50. Insert Interval

Алгоритмы Общее Уровень 2 Новая задача

Необходимо отсортировать список непересекающихся интервалов таким образом, чтобы добавить новый интервал, не нарушая упорядоченности и сохраняя корректное представление всех интервалов. Входные данны...

пирамида куча

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать построение и использование пирамиды кучи (heap) для хранения списка целых чисел. **Входные данные:** * `elements`: Список целых чисел, представляющий собой элементы для запо...

51. Minimum Number of Arrows to Burst Balloons

Алгоритмы Бектрекинг Уровень 2 Новая задача

Необходимо определить минимальное количество стрел, необходимых для лопанья всех воздушных шаров, расположенных в заданном массиве точек. Входные данные: `points`: Список кортежей, где каждый кортеж ...

подмножества битмаска

Алгоритмы Общее Уровень 2 Новая задача

Необходимо сгенерировать все возможные подмножества заданного набора целых чисел. Каждое подмножество представляется списком элементов из исходного набора. Входные данные: `nums`: Список целых чисел ...

52. Valid Parentheses

Алгоритмы Стек и очередь Уровень 2 Новая задача

Необходимо проверить, является ли строка с символами скобок (круглыми, квадратными, фигурными) правильно сбалансированной. Строка считается правильно сбалансированной, если для каждой открывающей ско...

проверка двудольности

Алгоритмы Общее Уровень 2 Новая задача

Задача: Проверка двудольности графа Необходимо определить, является ли данный граф двудольным, то есть можно ли его раскрасить в два цвета так, чтобы никакие две смежные вершины не имели одинаковый ц...

53. Simplify Path

Алгоритмы Динамическое программирование Уровень 2 Новая задача

Необходимо упростить заданный путь файловой системы Unix, представляющий собой структуру каталогов. Входные данные: `path` (str): Строка, представляющая путь к файлу или директории в формате Unix. П...

проверка простого числа

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, является ли заданное целое число простым или составным. Простое число делится только на 1 и само себя. Входные данные: * `n`: Целое число (`int`), которое необходимо проверит...

54. Min Stack

Алгоритмы Стек и очередь Уровень 2 Новая задача

Необходимо реализовать структуру данных "Минимальный стек" (Min Stack), которая поддерживает операции добавления (`push`), удаления верхнего элемента (`pop`), получения верхнего элемента (`top`) и пол...

пропущенное число 1..N

Алгоритмы Общее Уровень 2 Новая задача

Необходимо найти одно число из последовательности целых чисел от 1 до N (включительно), которое отсутствует в предоставленном списке чисел. Входные данные: * `nums`: Список целых чисел, представляю...

55. Evaluate Reverse Polish Notation

Алгоритмы Стек и очередь Уровень 2 Новая задача

Необходимо вычислить математическое выражение, представленное в обратной польской нотации (RPN). Обратная польская нотация – это формат записи выражений, где операторы следуют непосредственно за опер...

простые множители

Алгоритмы Общее Уровень 2 Новая задача

Разложить заданное целое число на простые множители, то есть представить его как произведение известных простых чисел. Входные данные: одно целое число `n`. Выходные данные: список целых чисел, сод...

56. Basic Calculator

Алгоритмы Стек и очередь Уровень 2 Новая задача

Напишите функцию, которая вычисляет арифметическое выражение со скобками и операциями сложения и вычитания. Функция принимает строку `s` (строка), содержащую арифметическое выражение в виде строки. ...

реверс связного списка

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать функцию, которая переворачивает связный список, изменяя направление указателей `next` в каждом узле. На вход принимается указатель `head` на голову связного списка типа `ListNo...

57. Linked List Cycle

Алгоритмы Связные списки Уровень 2 Новая задача

Необходимо определить, образует ли данный связный список цикл. На вход принимается один параметр типа `ListNode`, представляющий голову связного списка. `ListNode` имеет два атрибута: `val` (значен...

решето эратосфена

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать алгоритм для генерации списка всех простых чисел до заданного натурального числа `n` включительно. Простые числа – это целые положительные числа, которые делятся только на 1 и ...

58. Add Two Numbers

Алгоритмы Связные списки Уровень 2 Новая задача

Необходимо реализовать функцию, которая складывает два числа, представленных в виде связных списков цифр. Входные данные: * `l1`: Связный список, представляющий первую часть числа. Каждый узел спи...

романские числа

Алгоритмы Общее Уровень 2 Новая задача

Необходимо разработать программу для преобразования целых чисел в их римское представление и обратно. Входные данные: * `num` (int): Целое число, которое нужно представить в виде римской записи или...

59. Merge Two Sorted Lists

Алгоритмы Связные списки Уровень 2 Новая задача

Необходимо реализовать функцию, которая объединяет два отсортированных связных списка в один отсортированный связный список. Входные данные: `list1`: Первый отсортированный связный список, представле...

самое частое слово

Алгоритмы Общее Уровень 2 Новая задача

Напишите функцию, которая определяет самое часто встречающееся слово в заданном тексте. Входные данные: `text` (str): Строка текста, содержащая одно или несколько слов. Выходные данные: (str or None...

60. Copy List with Random Pointer

Алгоритмы Связные списки Уровень 2 Новая задача

Необходимо создать новую копию связного списка, где каждый узел новой копии соответствует исходному узлу, и случайные указатели (random pointers) в новой копии правильно сопоставлены с соответствующим...

сбалансированные скобки

Алгоритмы Общее Уровень 2 Новая задача

Необходимо проверить, правильно ли сбалансированы скобки (круглые, квадратные, фигурные) в данной строке. Входные данные: строка `s` (строка), содержащая скобки различных типов. Выходные данные: бул...

61. Reverse Linked List II

Алгоритмы Связные списки Уровень 2 Новая задача

Необходимо изменить структуру связного списка, развернув подсписок, который начинается с узла на позиции `left` и заканчивается узлом на позиции `right` (включительно). Входные данные: * `head`: Ук...

слияние отсортированных списков

Алгоритмы Общее Уровень 2 Новая задача

Необходимо создать новый отсортированный список, объединив два заданных отсортированных списка целых чисел. Входные данные: * `a`: Список (list) целых чисел, предварительно отсортированный по возра...

62. Reverse Nodes in k-Group

Алгоритмы Связные списки Уровень 2 Новая задача

Задача заключается в том, чтобы переформировать связный список таким образом, чтобы его узлы группировались по k элементов и каждый такой подсписок разворачивался в обратном порядке. Входные данные: ...

совершенное число

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, является ли заданное натуральное число совершенным. Совершенное число – это положительное целое число, равное сумме его собственных делителей (исключая само число). Входные дан...

63. Remove Nth Node From End of List

Алгоритмы Связные списки Уровень 2 Новая задача

Задача заключается в удалении n-го узла с конца заданного связного списка. Входные данные: * `head`: Указатель на голову связного списка (тип ListNode). * `n`: Целое число, определяющее позицию у...

сортировка слиянием

Алгоритмы Алгоритмы Уровень 2 Новая задача

Необходимо реализовать функцию сортировки слиянием (Merge Sort), которая принимает неотсортированный список чисел и возвращает новый список, содержащий те же числа в отсортированном порядке по возраст...

64. Remove Duplicates from Sorted List II

Алгоритмы Связные списки Уровень 2 Новая задача

Задача заключается в удалении всех повторяющихся значений из отсортированного списка (связного списка), оставляя только уникальные элементы. Входные данные: `head`: Указатель на голову отсортированно...

стек

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать структуру данных "Стек" (Stack), которая позволяет добавлять и удалять элементы с соблюдением принципа LIFO ("последним пришел – первым ушел"). Функция `push(x)` принимает числ...

65. Rotate List

Алгоритмы Связные списки Уровень 2 Новая задача

Необходимо реализовать функцию, которая циклически сдвигает заданный связный список вправо на `k` позиций. Входные данные: * `head`: Указатель на голову связного списка (узел). * `k`: Целое число...

степень двойки

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, является ли заданное целое число степенью двойки. Для этого нужно проверить, положительное ли число и не имеет ли оно ни одного установленного бита (кроме самого младшего). Вхо...

66. Partition List

Алгоритмы Связные списки Уровень 2 Новая задача

Разделить данный связный список на два подсписка таким образом, чтобы все узлы, значения которых меньше заданного числа `x`, находились в первом подсписке, а все узлы с значениями больше или равными `...

счастливый билет

Алгоритмы Общее Уровень 2 Новая задача

Задача: Счастливый билет Необходимо проверить, является ли заданная строка (представляющая собой число) счастливым билетом. Счастливый билет определяется как число, для которого сумма цифр его левой...

67. LRU Cache

Алгоритмы Связные списки Уровень 2 Новая задача

Реализуйте структуру данных LRU (Least Recently Used) Cache. LRU кэш хранит пары ключ-значение и поддерживает максимальный размер. Входные данные: `capacity`: Целое число, определяющее максимальную ...

тип треугольника

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить тип треугольника, заданного тремя сторонами. Треугольник может быть равносторонним, равнобедренным, разносторонним или не являться треугольником. На вход подаются три целых числ...

68. Maximum Depth of Binary Tree

Алгоритмы Деревья Уровень 2 Новая задача

Необходимо определить максимальную глубину бинарного дерева, то есть длину самого длинного пути от корня до любого листа в дереве. Входные данные: * `root`: Корень бинарного дерева. Предполагается...

топ-k куча

Алгоритмы Общее Уровень 2 Новая задача

Необходимо найти `k` наибольших элементов в заданном списке чисел. Для этого используется структура данных – куча (heap), которая позволяет эффективно находить элементы с максимальными значениями. Вх...

топологическая сортировка

Алгоритмы Алгоритмы Уровень 2 Новая задача

Необходимо реализовать алгоритм топологической сортировки для ориентированного графа. Топологическая сортировка представляет собой линейное упорядочение вершин (узлов) графа таким образом, что для ка...

69. Same Tree

Алгоритмы Деревья Уровень 2 Новая задача

Задача заключается в определении, являются ли два заданных бинарных дерева идентичными по структуре и значениям узлов. Входные данные: * `p`: Указатель на корень первого бинарного дерева (тип может...

факториал

Алгоритмы Общее Уровень 2 Новая задача

Вычислить факториал заданного неотрицательного целого числа. Факториал числа n (обозначается как n!) – это произведение всех натуральных чисел от 1 до n. Входные данные: одно целое число `n` (int), п...

70. Invert Binary Tree

Алгоритмы Динамическое программирование Уровень 2 Новая задача

Необходимо перевернуть бинарное дерево, меняя местами левое и правое поддеревья каждого узла. Входные данные: * `root`: Корень бинарного дерева типа `TreeNode`. Если дерево пустое, `root` будет ра...

71. Symmetric Tree

Алгоритмы Деревья Уровень 2 Новая задача

Задача заключается в проверке, является ли данное бинарное дерево симметричным, то есть, если отразить левое поддерево относительно центрального узла, оно должно совпадать с правым поддеревом. Входны...

фибоначчи матрицей

Алгоритмы Общее Уровень 2 Новая задача

Необходимо реализовать функцию для вычисления n-го числа Фибоначчи, используя матричное умножение. Входные данные: * `n`: целое число (int), представляющее номер числа Фибоначчи, которое нужно вычи...

72. Construct Binary Tree from Preorder and Inorder Traversal

Алгоритмы Деревья Уровень 2 Новая задача

Задача заключается в построении бинарного дерева, используя предоставленные обходы префиксного (preorder) и инфиксного (inorder) переходов. Входные данные: * `preorder`: Список (list) целых чисел,...

центр дерева

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить узлы дерева, являющиеся "центрами" – то есть, узлы, вокруг которых другие узлы расположены симметрично. Центр дерева – это один или несколько узлов, которые имеют равное количес...

73. Construct Binary Tree from Inorder and Postorder Traversal

Алгоритмы Деревья Уровень 2 Новая задача

Задача заключается в построении бинарного дерева с заданными свойствами, используя два обхода: inorder и postorder. Входные данные: * `inorder`: Список (list) целых чисел, представляющих узлы бина...

74. Populating Next Right Pointers in Each Node II

Алгоритмы Деревья Уровень 2 Новая задача

Задача: Необходимо пройтись по всем узлам бинарного дерева и заполнить указатель `next` каждого узла, указывающий на его непосредственного потомка (следующего) в том же уровне дерева. Если узел не им...

число армстронга

Алгоритмы Общее Уровень 2 Новая задача

Необходимо определить, является ли данное число «числом Армстронга». Число Армстронга – это число, равное сумме его цифр в степени количества цифр в этом числе. Вход: одно целое число `n`. Выход: Бу...

75. Flatten Binary Tree to Linked List

Алгоритмы Два указателя Уровень 2 Новая задача

Преобразовать заданное бинарное дерево в связный список, где узлы дерева последовательно соединены друг с другом в порядке обхода в глубину (preorder). Входные данные: `root`: Корень бинарного дерева...

76. Path Sum

Алгоритмы Скользящее окно Уровень 2 Новая задача

Задача заключается в проверке, существует ли путь от корня дерева к любому его листовому узлу, сумма значений которого равна заданной целевой сумме. Входные данные: * `root`: Корень бинарного дерев...

77. Sum Root to Leaf Numbers

Алгоритмы Деревья Уровень 2 Новая задача

Необходимо вычислить сумму всех возможных чисел, которые можно составить, проходя по всем путям от корня дерева до листьев. Входные данные: * `root`: Корень бинарного дерева. Каждый узел дерева пре...

78. Binary Tree Maximum Path Sum

Алгоритмы Деревья Уровень 2 Новая задача

Задача заключается в том, чтобы найти максимальную сумму пути (поддерева) в данном бинарном дереве. Входные данные: * `root`: Корень бинарного дерева, представленный узлом. Узел имеет атрибуты `va...

79. Binary Search Tree Iterator

Алгоритмы Деревья Уровень 2 Новая задача

Необходимо реализовать итератор для двоичного дерева поиска (BST), который предоставляет методы `next()` и `hasNext()`. Входные данные: * `root`: Корневой узел BST типа TreeNode. Выходные данные:...

80. Count Complete Tree Nodes

Алгоритмы Деревья Уровень 2 Новая задача

Задача: Необходимо подсчитать количество узлов в полном бинарном дереве. Входные данные: * `root`: Корень бинарного дерева, представленный объектом (предполагается наличие атрибутов `left` и `right...

81. Lowest Common Ancestor of a Binary Tree

Алгоритмы Поиск и сортировка Уровень 2 Новая задача

Необходимо найти наименьшего общего предка (LCA) двух заданных узлов `p` и `q` в данном бинарном дереве. На вход подается: * `root`: Корень бинарного дерева, представляющего собой узел с атрибутами...

82. Binary Tree Right Side View

Алгоритмы Деревья Уровень 2 Новая задача

Необходимо реализовать функцию, которая возвращает значения узлов бинарного дерева, видимых с правой стороны. Входные данные: `root`: Корень бинарного дерева. Предполагается, что это узел класса `Tr...

83. Average of Levels in Binary Tree

Алгоритмы Деревья Уровень 2 Новая задача

Необходимо вычислить среднее значение значений узлов на каждом уровне бинарного дерева. Входные данные: * `root`: Корень бинарного дерева. Узел может быть представлен объектом с атрибутами `val` (з...

84. Binary Tree Level Order Traversal

Алгоритмы Стек и очередь Уровень 2 Новая задача

Необходимо реализовать обход бинарного дерева по уровням (Breadth-First Search или BFS). Задача заключается в том, чтобы получить представление о структуре дерева, где каждый уровень представлен спис...

85. Binary Tree Zigzag Level Order Traversal

Алгоритмы Стек и очередь Уровень 2 Новая задача

Необходимо реализовать обход бинарного дерева по уровням (level order traversal) таким образом, чтобы элементы каждого уровня выводились в "Z-образной" последовательности. Это означает, что при обход...

86. Minimum Absolute Difference in BST

Алгоритмы Два указателя Уровень 2 Новая задача

Необходимо найти минимальную абсолютную разницу между любыми двумя значениями узлов в данном бинарном дереве поиска (BST). Входные данные: `root`: Корень бинарного дерева поиска, представленный узлом...

87. Kth Smallest Element in a BST

Алгоритмы Деревья Уровень 2 Новая задача

Необходимо найти k-й наименьший элемент в данном бинарном дереве поиска (BST). На вход принимаются: * `root`: корень BST, представляющий собой узел дерева. * `k`: целое число, указывающее на пози...

88. Validate Binary Search Tree

Алгоритмы Поиск и сортировка Уровень 2 Новая задача

Задача заключается в проверке бинарного дерева поиска (BST) на соответствие его структуре правилам BST. Необходимо определить, является ли данное дерево валидным BST, то есть соответствует ли свойств...

89. Number of Islands

Алгоритмы Графы Уровень 2 Новая задача

Необходимо подсчитать количество отдельных "островов" (областей, состоящих из символов '1') в данной бинарной матрице. Входные данные: * `grid`: Двумерный массив (список списков) целых чисел, где к...

90. Surrounded Regions

Алгоритмы Графы Уровень 2 Новая задача

Задача заключается в том, чтобы изменить карту, состоящую из 'X' и 'O', так, чтобы все области, окруженные 'X', были заменены на 'X'. Входные данные: `board`: Двумерный массив строк (список списков),...

91. Clone Graph

Алгоритмы Графы Уровень 2 Новая задача

Необходимо создать копию неориентированного графа, где каждый узел (Node) может иметь несколько соседей (neighbors). Входные данные: * `node`: Узел графа, с которого начинается клонирование. Тип д...

92. Evaluate Division

Алгоритмы Графы Уровень 2 Новая задача

Необходимо вычислить значения уравнений вида a/b = value для заданных значений a, b и value, а также для заданных запросов, состоящих из двух переменных. Входные данные: * `equations`: Список корте...

93. Course Schedule

Алгоритмы Графы Уровень 2 Новая задача

Необходимо определить, возможно ли успешно завершить все курсы в университете, учитывая зависимости между ними (какой курс нужно пройти перед тем, как можно начать другой). Задача сводится к проверке...

94. Course Schedule II

Алгоритмы Стек и очередь Уровень 2 Новая задача

Необходимо определить порядок прохождения курсов, учитывая зависимости между ними (предварительные требования). Каждому курсу может быть присвоено несколько предварительных требований. Задача заключ...

95. Snakes and Ladders

Алгоритмы Графы Уровень 2 Новая задача

Задача: Определить минимальное количество шагов для достижения финиша (квадрата n*n) в игре "Змеи и лестницы". Входные данные: `board`: Двумерный массив целых чисел размером n x n, представляющий дос...

96. Minimum Genetic Mutation

Алгоритмы Графы Уровень 2 Новая задача

Задача заключается в определении минимального количества мутаций (изменений одного символа ДНК в другой), необходимых для преобразования одной заданной строки ДНК в другую. Входные данные: * `start...

97. Word Ladder

Алгоритмы Динамическое программирование Уровень 2 Новая задача

Необходимо найти длину самой короткой последовательности слов, начиная с заданного начального слова и заканчивая целевым словом, где каждое следующее слово отличается от предыдущего только одной букво...

98. Implement Trie (Prefix Tree)

Алгоритмы Префиксное дерево Уровень 2 Новая задача

Необходимо реализовать структуру данных Trie (префиксное дерево) для эффективного хранения и поиска слов, а также проверки наличия префиксов. Входные данные: * `word`: Строка, представляющая слово ...

99. Design Add and Search Words Data Structure

Алгоритмы Префиксное дерево Уровень 2 Новая задача

Необходимо разработать структуру данных `WordDictionary`, которая позволяет добавлять новые слова и искать их, поддерживая символ '.' как wildcard (подставку любого символа) при поиске. На вход подае...

100. Word Search II

Алгоритмы Префиксное дерево Уровень 2 Новая задача

Необходимо найти все слова из заданного списка (words), которые можно составить, начиная с произвольной ячейки игрового поля слов (board) и перемещаясь по соседним ячейкам в горизонтальном или вертика...

Сортировка пузырьком

Алгоритмы Алгоритмы Уровень 3 Новая задача

Необходимо реализовать функцию сортировки пузырьком для упорядочивания списка целых чисел по возрастанию. Функция должна создать и вернуть новый отсортированный список, не изменяя исходный список. Вх...

Бинарный поиск

Алгоритмы Алгоритмы Уровень 3 Новая задача

Необходимо реализовать алгоритм бинарного поиска для эффективного определения позиции заданного элемента в отсортированном массиве чисел. Входные данные: * `arr`: Отсортированный массив целых чисел...

дп рюкзак

Алгоритмы Общее Уровень 3 Новая задача

Задача о рюкзаке (0/1 Knapsack) заключается в определении максимальной общей ценности предметов, которые можно поместить в рюкзак заданной вместимости, при условии, что каждый предмет можно взять либо...

фибоначчи dp

Алгоритмы Общее Уровень 3 Новая задача

Необходимо реализовать функцию для вычисления последовательности Фибоначчи с использованием динамического программирования (DP). Входные данные: целое число `n`, определяющее длину искомой последоват...

цикл в неориентированном графе dfs

Алгоритмы Структуры данных Уровень 3 Новая задача

Необходимо реализовать функцию для определения, содержит ли неориентированный граф цикл. Функция должна проверить все вершины графа и обнаружить замкнутые пути во время обхода в глубину (DFS). Вход:...

101. Letter Combinations of a Phone Number

Алгоритмы Бектрекинг Уровень 3 Новая задача

Необходимо сгенерировать все возможные комбинации букв, соответствующие заданному телефонному номеру (строке цифр). Входные данные: `digits` - строка, содержащая цифры телефонного номера. Строка мож...

102. Combinations

Алгоритмы Бектрекинг Уровень 3 Новая задача

Задача заключается в генерации всех возможных комбинаций из `k` элементов, выбранных из последовательности чисел от 1 до `n`. Входные данные: * `n`: Целое число, представляющее верхнюю границу диап...

103. Permutations

Алгоритмы Бектрекинг Уровень 3 Новая задача

Необходимо сгенерировать все возможные перестановки (упорядоченные варианты) элементов заданного массива целых чисел. Входные данные: * `nums`: Список (array) целых чисел. Выходные данные: * `r...

104. Combination Sum

Алгоритмы Бектрекинг Уровень 3 Новая задача

Необходимо найти все уникальные комбинации чисел из заданного списка кандидатов, которые в сумме дают целевое значение. Входные данные: * `candidates`: Список целых чисел (list of integers), предст...

105. N-Queens II

Алгоритмы Бектрекинг Уровень 3 Новая задача

Задача заключается в подсчете количества различных способов расположить *n* ферзей на шахматной доске размера *n x n* так, чтобы никакие две фигуры не атаковали друг друга. Входные данные: * `n` (i...

106. Generate Parentheses

Алгоритмы Бектрекинг Уровень 3 Новая задача

Необходимо сгенерировать все возможные комбинации скобок, используя `n` открывающих и `n` закрывающих скобок, при этом соблюдая правило, что каждая закрывающая скобка должна соответствовать предыдущей...

107. Word Search

Алгоритмы Бектрекинг Уровень 3 Новая задача

Задача: Необходимо проверить, содержится ли заданное слово в предоставленной сетке букв (игровом поле). Входные данные: * `board`: Двумерный массив строк, представляющий игровое поле. Каждая строка...

108. Convert Sorted Array to Binary Search Tree

Алгоритмы Деревья Уровень 3 Новая задача

Преобразовать заданный отсортированный массив в сбалансированное двоичное дерево поиска (BST). Входные данные: `nums`: Список целых чисел, представляющих элементы BST, отсортированные по возрастанию....

109. Sort List

Алгоритмы Связные списки Уровень 3 Новая задача

Необходимо отсортировать заданный связный список по возрастанию значений его узлов. Входные данные: `head`: Указатель на голову (первый узел) связного списка. Список может быть пустым или содержать...

110. Construct Quad Tree

Алгоритмы Деревья Уровень 3 Новая задача

Задача заключается в построении Quad Tree (квадратного дерева) из бинарной матрицы, где 0 представляет собой пустое пространство, а 1 – заполненное. Входные данные: `grid`: Двумерный массив (список с...

111. Merge k Sorted Lists

Алгоритмы Связные списки Уровень 3 Новая задача

Необходимо объединить заданное количество (k) отсортированных связных списков в один новый связный список, содержащий все элементы из исходных списков в лексикографическом порядке. Входные данные: `l...

112. Maximum Subarray

Алгоритмы Динамическое программирование Уровень 3 Новая задача

Необходимо найти максимальную сумму элементов подмассива, который может быть получен из данного массива целых чисел. Входные данные: `nums`: Массив целых чисел (список/array). Выходные данные: Целое...

113. Maximum Sum Circular Subarray

Алгоритмы Динамическое программирование Уровень 3 Новая задача

Задача: Необходимо найти максимальную сумму подмассива внутри заданного массива, где элементы могут быть как положительными, так и отрицательными. Важно учитывать возможность циклического (вращающего...

114. Search Insert Position

Алгоритмы Поиск и сортировка Уровень 3 Новая задача

Необходимо найти индекс в отсортированном массиве, куда следует вставить целевое число `target`, чтобы сохранить порядок сортировки. Входные данные: * `nums`: Отсортированный массив целых чисел. *...

115. Search a 2D Matrix

Алгоритмы Поиск и сортировка Уровень 3 Новая задача

Необходимо реализовать функцию, которая определяет, присутствует ли заданный элемент (target) в двумерной матрице, отсортированной по возрастанию как по строкам, так и по столбцам. Входные данные: * ...

116. Find Peak Element

Алгоритмы Поиск и сортировка Уровень 3 Новая задача

Необходимо найти и вернуть индекс любого пикового элемента в данном массиве чисел. Входные данные: `nums`: Список целых чисел (int). Выходные данные: Целое число (int), представляющее индекс пиковог...

117. Search in Rotated Sorted Array

Алгоритмы Поиск и сортировка Уровень 3 Новая задача

Необходимо реализовать функцию, которая ищет заданный элемент `target` в массиве `nums`, который изначально был отсортирован, но затем подвергся сдвигу (частичной перестановке элементов). Входные дан...

118. Find First and Last Position of Element in Sorted Array

Алгоритмы Поиск и сортировка Уровень 3 Новая задача

Необходимо найти индексы первого и последнего вхождения заданного элемента (target) в отсортированном массиве (nums). Входные данные: * `nums`: Список целых чисел, отсортированный по возрастанию. *...

119. Find Minimum in Rotated Sorted Array

Алгоритмы Поиск и сортировка Уровень 3 Новая задача

Необходимо найти минимальный элемент в массиве `nums`, который изначально был отсортирован по возрастанию, но затем подвергся сдвигу (частичной или полной). Входные данные: `nums`: Массив целых чисел...

120. Median of Two Sorted Arrays

Алгоритмы Поиск и сортировка Уровень 3 Новая задача

Задача: Необходимо найти медиану объединенных двух отсортированных массивов. Медиана – это значение, которое делит упорядоченный набор чисел пополам; для нечетного числа элементов - это среднее арифме...