josephus_problem-snapshot-AIkrW
Описание
Репозиторий - задание, созданный из шаблона Поток 2024/josephus_problem
Языки
- C++63,5%
- CMake36,5%
год назад
год назад
год назад
год назад
год назад
год назад
год назад
readme.md
Это шаблонны проект для выполнения ДЗ
Запуск Сборки и тестов через терминал
Задача "Круговой массив с шагом K" (Josephus Problem)
Цель задания
Реализовать алгоритм для определения последнего оставшегося элемента в круговом массиве после последовательного удаления каждого K-го элемента.
Используемые структуры данных:
для эффективного управления элементами в круговом порядке.std::deque
Описание задачи
Дан массив и целое число nums. На каждом шаге из массива удаляется K-ый элемент (счёт начинается с текущей позиции). Процесс повторяется, пока не останется один элемент.K
Требуется:
Найти значение последнего оставшегося элемента.
Примеры
Объяснение алгоритма
-
Инициализация дека:
Все элементы массива копируются в.std::deque -
Цикл удаления:
- На каждом шаге первые
элементов перемещаются в конец дека.K-1 - K-ый элемент (теперь в начале дека) удаляется.
- На каждом шаге первые
-
Завершение:
Когда в деке остаётся один элемент, он возвращается как результат.