Каждый раз, когда вы вводите 1 бактерию, количество микробов будет через 2 n через n дней. Чтобы достичь числа N, вы должны увидеть его степень 2.
5 равно 2 2 + 2 0 или 4 + 1.
, то есть в двоичном виде 5 равно 101
, что является вашим планом инъекции!
Чтобы достичь 5,
- (1) добавить 1 бактерию
- (0) через день добавить 0 бактерий и
- (1) через день добавьте 1 бактерию
Максимально допустимое число - 109
или 1101101
в двоичном виде. Чтобы достичь 109, добавьте 1, затем 1 через день, затем 0, затем 1 ...
слева
- первый 1 даст 2 6 через 6 дней (64)
- второй 1 даст 2 5 через 5 дней (32)
- третья 1 даст 2 3 через 3 дня (8)
- тогда ... 5 (4 + 1)
Наконец, чтобы узнать, сколько бактерий вам нужно ввести, просто посчитайте число 1
в целевом двоичном числе. То есть количество битов установлено.
Вы можете задаться вопросом, почему не вводить больше 1 в какой-то день? Поскольку проблема не ограничена количеством дней, вы будете «использовать» меньше бактерий, позволяя им размножаться. Это сила возведения в степень!