3. Озеленение
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Администрация города решила разбить парк на пустыре площадью $$$N \times M$$$. В парке планируется высадить деревья. Для каждого дерева нужно выделить участок прямоугольной формы с целочисленными сторонами и площадью, равной $$$S$$$.

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

Какое наибольшее количество деревьев можно высадить в парке?

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

В трёх строках вводится три числа $$$N$$$, $$$M$$$, $$$S$$$ ($$$1 \leq N \cdot M \leq 10^{18}$$$, $$$1 \leq S \leq 10^{12}$$$) — длина поля, ширина поля и площадь участка соответственно.

Обратите внимание, что значения $$$N$$$, $$$M$$$ и $$$S$$$ могут превышать возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C++, тип long в Java и C#).

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

В первой строке выведите одно целое число — максимальное количество деревьев, которые можно высадить в этом парке. Гарантируется, что всегда удастся высадить хотя бы одно дерево.

Система оценки

Решения, правильно работающие при $$$N, M, S \leq 10^{2}$$$, будут оцениваться в $$$20$$$ баллов.

Решения, правильно работающие при $$$S \leq 10^{6}$$$, будут оцениваться в $$$40$$$ баллов.

Примеры
Входные данные
10
10
1
Выходные данные
100
Входные данные
2
5
2
Выходные данные
5
Входные данные
4
8
9
Выходные данные
2
Примечание

В первом примере все участки будут иметь только размер $$$1 \times 1$$$, их поместится ровно $$$100$$$ штук.

Во втором примере оптимальный размер участков будет $$$2 \times 1$$$, их поместится ровно $$$5$$$ штук.

В третьем примере оптимальный размер участка будет $$$3 \times 3$$$ и участков поместится только два. Три или более участков разместить невозможно.