Пятница, 13-ое, День Программиста |
---|
Закончено |
Трискаидекафобия — страх числа 13. Обычные люди, страдающие этой фобией, чувствуют себя неуютно в обществе чисел 13, 130, 513 и так далее, но вы, будучи программистом, подняли ее на новые высоты. Возьмем, к примеру, число 7. В десятичной записи оно не опасно, но в записи в системе счисления с основанием 4 оно становится опасным 13!
Чем больше вы думаете об этом, тем хуже все выглядит. Для числа 100, например, существует 13 оснований, записи в которых содержат 13. А для некоторых чисел таких оснований и вовсе бесконечно много! К счастью, любые вычисления вы проводите в двоичной системе, надежно защищенной от проникновения 13. Но все равно, хотелось бы иметь возможность оценить скверность любого числа.
Дано число n. Найдите количество различных оснований b (b ≥ 2), для которых n, будучи записанным в системе счисления с основанием b, содержит хотя бы одно 13. «Цифры» записи с основанием, большим 10, записываются не буквами, а числами в десятичной записи; так, 30, записанное в системе счисления с основанием 16, будет не 1E, а (1)(14) или просто 114. Обратите внимание, 13 должно присутствовать как подстрока записи, а не подпоследовательность (число 123 не содержит 13).
Единственная строка входных данных содержит целое число n (1 ≤ n ≤ 105).
Выведите целое число — количество различных оснований b (b ≥ 2), для которых n, будучи записанным в системе счисления с основанием b, содержит хотя бы одно 13. Если таких оснований бесконечно много, выведите -1.
7
1
100
13
13
-1
Название |
---|