Решение трудных и увлекательных задач на Python, Изадха Х., Бехзадидуст Р., 2024.
Цель данной книги - укрепить навыки логического рассуждения и развить творческое мышление, представив и решив 90 не самых простых задач на Python. Задачи изложены доходчиво и сжато, снабжены алгоритмами и комментариями, что помогает читателям следить за процессом их решения и понимать его суть.
Издание предназначено читателям с базовыми знаниями языка Python, которые стремятся вывести свои способности на новый уровень. Книга будет полезна студентам, преподавателям, разработчикам, а также участникам соревнований по программированию.

Наименьшее число из семерок и нулей.
В западной культуре число семь считается символом удачи, а число ноль, напротив, считается нежелательным. Числа, составленные из семерок и нулей, такие как 77777777777777777 или 77700, часто называют «семь-ноль». Одна замечательная теорема доказывает, что для любого положительного целого числа существует множество целых чисел, составленных из семерок и нулей, которые делятся на n без остатка.
Ваша задача: написать функцию, которая отыскивает наименьшее положительное целое число, состоящее из семерок и нулей, которое без остатка делится на заданное число n. При этом число, состоящее из одних нулей, не считается желаемым результатом.
ОГЛАВЛЕНИЕ.
Предисловие.
Об авторах.
Глава 1. Введение.
1.1. Почему Python?.
1.2. Без использования библиотек.
1.3. Развитие навыков программирования и творческого мышления при решении сложных задач.
1.4. Предварительные условия.
1.5. Целевая аудитория.
Глава 2. Математика.
2.1. Задача Иосифа Флавия. Алгоритм.
2.2. Подсчет количества путей к точке (0,0) на координатной сетке.
2.3. Создание отсортированного списка целых чисел для задачи выбора Брюсселя.
2.4. Поиск решения обратной гипотезы Коллатца.
2.5. Подсчет правильных прямых углов.
2.6. Ближайшее s‑угольное число.
2.7. Поиск точки опоры физических весов.
2.8. Вычисление общего количества блоков, необходимых для построения пирамиды из сфер.
2.9. Группировка монет.
2.10. Поиск медианы по тройкам чисел.
2.11. Наименьшее число из семерок и нулей.
2.12. Оценка математических выражений в постфиксной нотации.
2.13. Достижение стабильного состояния в болгарском пасьянсе.
2.14. Вычисление площади прямоугольных башен Манхэттена на линии горизонта.
2.15. Разрезание прямоугольника на квадраты.
2.16. Удаление правильных прямых углов в двумерной сетке.
2.17. Треугольник Лейбница.
2.18. Расстояние Коллатца.
2.19. Сумма двух квадратов.
2.20. Поиск трех чисел.
2.21. Определение совершенной степени.
2.22. Лунное умножение целых чисел.
2.23. n‑й член последовательности Рекамана.
2.24. n‑й член последовательности Ван Эка.
2.25. Поиск суммы чисел Фибоначчи на основе теоремы Цекендорфа.
2.26. Поиск k‑го слова Фибоначчи.
2.27. Поиск прямой в двумерной сетке, пересекающей наибольшее количество точек.
2.28. Проверка сбалансированности центрифуги.
Глава 3. Числа.
3.1. Число Циклопа.
3.2. Цикл домино.
3.3. Извлечение возрастающих чисел.
3.4. Развертывание целочисленных интервалов.
3.5. Свертывание целочисленных интервалов.
3.6. Левосторонний игральный кубик.
3.7. Очки за повторяющиеся числа.
3.8. Первое меньшее число.
3.9. Первый объект, предшествующий k меньшим объектам.
3.10. Поиск n‑го члена последовательности Калкина–Уилфа.
3.11. Поиск и обращение восходящих подмассивов.
3.12. Наименьшие целые степени.
3.13. Сортировка циклов в графе.
3.14. Получение представления числа в сбалансированной троичной системе.
3.15. Строгое возрастание.
3.16. Сортировка по приоритетам.
3.17. Сортировка положительных чисел с сохранением порядка отрицательных чисел.
3.18. Сортировка: сначала числа, потом символы.
3.19. Сортировка дат.
3.20. Сортировка по алфавиту и длине.
3.21. Сортировка чисел по количеству цифр.
Глава 4. Строки.
4.1. Шифрование текста блинчиком.
4.2. Перестановка гласных в обратном порядке.
4.3. Форма слова из текстового корпуса.
4.4. Высота слова из текстового корпуса.
4.5. Объединение соседних цветов по заданным правилам.
4.6. Вторая машина Маккаллоха.
4.7. Слово Чампернауна.
4.8. Объединение строк.
4.9. Расшифровка слов.
4.10. Автокорректор слов.
4.11. Правильная форма глагола в испанском языке.
4.12. Выбор слов с одним и тем же набором букв.
4.13. Выбор слов из текстового корпуса, соответствующих шаблону.
Глава 5. Игры.
5.1. Определение выигрышной карты.
5.2. Подсчет карт каждой масти в игре бридж.
5.3. Получение сокращенного представления карт в раздаче в игре «Контрактный бридж».
5.4. Наборы карт одинаковой формы в карточной игре.
5.5. Подсчет количества раундов обработки чисел в порядке возрастания.
5.6. Достижение стабильного состояния в распределении конфет.
5.7. Игра вари.
5.8. Количество безопасных полей на шахматной доске с ладьями.
5.9. Количество безопасных полей на шахматной доске со слонами.
5.10. Достижимость поля для коня в многомерных шахматах.
5.11. Захват максимального количества шашек на шахматной доске.
5.12. Количество безопасных полей для размещения дружественных фигур на шахматной доске.
5.13. Количество очков в игре в кости «Скала».
5.14. Наилучший результат из нескольких бросков в игре в кости «Скала».
Глава 6. Счет.
6.1. Подсчет количества переносов при сложении двух заданных чисел.
6.2. Подсчет количества рычащих животных.
6.3. Подсчет количества способов выражения вежливого числа.
6.4. Подсчет вхождений каждой цифры.
6.5. Подсчет количества максимальных слоев на двумерной плоскости.
6.6. Подсчет количества доминирующих чисел.
6.7. Подсчет количества троек чисел.
6.8. Подсчет пар пересекающихся кругов.
Глава 7. Разные задачи.
7.1. Идеальное перемешивание элементов списка.
7.2. Точный размен монет с учетом имеющихся номиналов.
7.3. Удаление избыточных элементов из списка.
7.4. Когда две лягушки встретятся в одном квадрате.
7.5. Определение позиции числа в массиве Витхофа.
7.6. Интерпретация программы на Fractran.
Предметный указатель.
Купить .
Теги: учебник по программированию :: программирование :: Изадха :: Бехзадидуст