Информация об изменениях

Сообщение Re: Как быстро посчитать? от 19.10.2015 8:23

Изменено 19.10.2015 8:30 Chorkov

Здравствуйте, olimp_20, Вы писали:


_>Вопрос:

_>1) если можно найти ответ, то чем ограничить перебор чисел из одинаковых цифр?

Можно ограничить:
10^m

(где m — заданное число, меньшее 999).

Пусть G(k) = 111...1 (k единиц).
G(k) = (10^k-1)/9,
G(k+1) = G(k)*10+1

Рассмотрим последовательность S(k) = G(k) % m.

S(k+1) = (S(k)*10 +1) % m

Очевидно, S(k)<m для любого k.
Следовательно длинна периода S(k), также должна быть не больше m,
(поскольку все числа S(k) в пределах одного периода должны быть уникальны).
Re: Как быстро посчитать?
Здравствуйте, olimp_20, Вы писали:


_>Вопрос:

_>1) если можно найти ответ, то чем ограничить перебор чисел из одинаковых цифр?

Можно ограничить:
10^m

(где m — заданное число, меньшее 999).

Пусть G(k) = 111...1 (k единиц).
G(k) = (10^k-1)/9,
G(k+1) = G(k)*10+1

Рассмотрим последовательность S(k) = G(k) % m.

S(k+1) = (S(k)*10 +1) % m

Очевидно, S(k)<m для любого k.
Следовательно длинна периода S(k), также должна быть не больше m,
(поскольку все числа S(k) в пределах одного периода должны быть уникальны).

P.S.
Для чисел состоящих из других цифр — действует аналогичное ограничение.