Codeforces Round 361 (Div. 2) |
---|
Закончено |
Плохие новости в деревне Майка — неизвестные воры украли много шоколадок с местного завода! Ужас!
Кроме любви к сладкому, воры из окрестностей еще и известные жадины. Поэтому когда один из воров забирает несколько шоколадок для себя, следующий вор забирает ровно в k раз больше шоколадок. Значение k (k > 1) является секретным целым числом, известным только ворам. Также известно, что рюкзак любого вора выдерживает ограниченное количество шоколадок, однако и это целое число n остается в тайне между ворами. Кроме того, Майк знает, что всего в краже шоколадок участвовали четыре вора.
Число n известно только ворам, однако по слухам, число способов, которыми воры могли разобрать шоколадки (при фиксированном n, но не фиксированном k) равно m. Два способа украсть шоколадки считаются различными, если найдется вор (а их следует нумеровать в порядке взятия ими шоколадок), что количество шоколадок, взятое им, различается в этих способах.
Майк хочет поймать воров, поэтому ему важно знать больше об их сумках, и значение n поможет ему в этом. Помогите Майку найти наименьшее подходящее значение n или сообщите, что слухи ложны и подходящего n не существует.
В единственной строке входных данных содержится целое число m (1 ≤ m ≤ 1015) — слух о числе способов украсть шоколадки.
Выведите единственное целое число n — максимальное количество шоколадок, которое может выдержать портфель любого из воров. Если таких n несколько, выведите наименьшее из них.
Если таких n не существует и слухи ложны, выведите - 1.
1
8
8
54
10
-1
В первом примере из условия наименьшим подходящим n является n = 8, и количества украденных каждым вором шоколадок равны (1, 2, 4, 8).
Во втором примере из условия наименьшим подходящим n является n = 54 с количествами: (1, 2, 4, 8), (1, 3, 9, 27), (2, 4, 8, 16), (2, 6, 18, 54), (3, 6, 12, 24), (4, 8, 16, 32), (5, 10, 20, 40), (6, 12, 24, 48).
В третьем примере подходящего к ровно десяти способам n не существует.
Название |
---|