Захватят ли нанороботы мир?

Захватят ли нанороботы мир?

Моделируем ход техногенной катастрофы с помощью простого уравнения.

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

Захватят ли сколковские наноботы всю планету, если вырвутся из не очень хорошо охраняемых сколковских лабораторий и начнут размножаться в дикой природе?

Эта задача красиво решается через обычные школьные уравнения, но для этого нужно будет добавить два неизвестных.

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

секунда 0:  1 — потому что в самом начале у нас один нанобот

секунда 1: 2 × 1 — после первой секунды наноботов стало два, значит, они съели две бактерии, каждый по одной

секунда 2: 2 × 2 × 1 — наноботы снова удвоились и съели по бактерии

Мы видим постоянное произведение двоек, а значит, их можно представить в виде степени:

секунда 0: 1 = 2 в нулевой степени

секунда 1: 2 = 2¹

секунда 2: 4 = 2²

*  * *

T секунда: 2 в степени Т

Мы выяснили, как быстро размножаются наноботы и сколько на каждой секунде они съедят бактерий. Теперь допустим, что когда на планете появился один нанобот, этих бактерий уже было N штук. Тогда снова обозначим время в секундах как Т и попробуем выяснить, сколько бы получалось бактерий на каждой секунде с учётом наноботов:

секунда 0: N — начальные условия

секунда 1:  2 × (N − 1) —  перед удвоением наноботы съели одну бактерию

секунда 2: 2 × [ 2 × (N − 1) − 2] — удваиваем то, что было до этого, и перед этим вычитаем две съеденных бактерии

секунда 3: 2 × { 2 × [ 2 × (N − 1) − 2] − 4} — снова удваиваем предыдущее, не забывая вычитать съеденных бактерий.

Раскроем скобки и продолжим логический ряд:

секунда 0: N

секунда 1:  2 × N − 2

секунда 2: 2² × N − 8

секунда 3: 2³ × N − 24

*  * *

секунда Т: (2 в степени Т) × N − (2 в степени T) × Т

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

(2 в степени Т) × N − (2 в степени T) × Т = 0

Перенесём одну часть уравнения вправо:

(2 в степени Т) × N = (2 в степени T) × Т

Видим, что в каждой части есть общий множитель: (2 в степени Т). Сократим его:

N = Т

Получается, что наноботам, чтобы съесть всех бактерий, понадобится столько секунд, сколько бактерий было на планете в момент старта. А раз время у нас не ограничено, то в конце концов наноботы дожуют всех бактерий и ЗАХВАТЯТ ВЕСЬ МИР!

Проверим это для колонии из четырёх бактерий:

секунда 0: 4 бактерии и 1 нанобот

секунда 1: 6 бактерий и 2 нанобота

секунда 2: 8 бактерий и 4 нанобота

секунда 3: 8 бактерий и 8 наноботов

секунда 4: 0 бактерий и 16 наноботов

Решение работает, наноботы победили!

Обложка:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Маша Климентьева

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Вам может быть интересно
Задача про таблетки и злого гения
Задача про таблетки и злого гения

Как логика и ограничения помогают найти банку с отравленными таблетками.

medium
Задача про начальника транспортного цеха
Задача про начальника транспортного цеха

Что быстрее — вспомнить формулы за 7 класс или написать программу для решения?

easy
Почему разработчик сегодня злой
Почему разработчик сегодня злой

Три главные проблемы в работе программиста и как с ними быть.

easy
Задача про команду программистов, тимлида и таск-трекер
Задача про команду программистов, тимлида и таск-трекер

Описание простое, а задачка — нет

easy
Логическая задача про джуна, мидла и их дни рождения
Логическая задача про джуна, мидла и их дни рождения

Да-Да-Нет-Да

easy
Не болеть!
Не болеть!
Сложная логическая задача про сумму перестановок
Сложная логическая задача про сумму перестановок

Как сложить 120 чисел за пару минут

medium
Самая сложная задача для школьников, которую никто не смог решить
Самая сложная задача для школьников, которую никто не смог решить

Теперь попробуйте вы

hard
Андрюха, у нас логика! Возможно, криминал
Андрюха, у нас логика! Возможно, криминал

Логическая задача о преступности.

easy
easy