B. Неквадратное уравнение
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Рассмотрим уравнение:

x2 + s(xx - n = 0, 

где x, n — целые положительные числа, s(x) — функция, равная сумме цифр числа x в десятичной системе счисления.

Вам дано целое число n, найдите наименьший целый положительный корень уравнения x, или определите, что таких корней нет.

Входные данные

В единственной строке записано целое число n (1 ≤ n ≤ 1018) — параметр уравнения.

Пожалуйста, не используйте спецификатор %lld для чтения или записи 64-х битовых чисел на С++. Рекомендуется использовать потоки cin, cout или спецификатор %I64d.

Выходные данные

Выведите -1, если уравнение не имеет целых положительных корней. Иначе выведите такое наименьшее целое x (x > 0), что описанное в условии равенство выполняется.

Примеры
Входные данные
2
Выходные данные
1
Входные данные
110
Выходные данные
10
Входные данные
4
Выходные данные
-1
Примечание

В первом тестовом примере x = 1 является наименьшим корнем. Так как s(1) = 1 и 12 + 1·1 - 2 = 0.

Во втором тестовом примере x = 10 является наименьшим корнем. Так как s(10) = 1 + 0 = 1 и 102 + 1·10 - 110 = 0.

В третьем тестовом примере корней у уравнения нет.