eolymp
bolt
Try our new interface for solving problems
Problems

Ролевая игра

Ролевая игра

Вася готовит инвентарь для ролевой игры. В игре должны принять участие \textbf{n} игроков, каждый из которых будет изображать персонажа фантастического мира. В процессе игры каждый персонаж будет обладать некоторым уровнем \textbf{x}, который представляет собой целое число от \textbf{1} до \textbf{m}. Для обозначения уровня планируется использовать специальные значки двух цветов. Белый значок обозначает один уровень, а красный значок --- \textbf{k} уровней. Игрок, изображающий персонажа с уровнем \textbf{x}, должен иметь \textbf{a} белых значков и \textbf{b} красных значков, чтобы сумма \textbf{(a + bk)} была равна \textbf{x}. При этом персонажу не разрешается иметь более чем \textbf{(k -- 1)} белых значков. Значки для игры готовятся заранее, однако уровни персонажей заранее неизвестны. Для успешного проведения игры всем персонажам необходимо выдать соответствующее их уровням количество значков. Возникает вопрос: какое минимальное суммарное количество значков необходимо подготовить для успешного проведения игры при любых уровнях участвующих персонажей. Требуется написать программу, которая по заданным числам \textbf{n}, \textbf{m} и \textbf{k} вычисляет минимальное количество значков, которое необходимо подготовить для успешного проведения игры. \InputFile Входной файл содержит расположенные в одной строке три целых числа: \textbf{n}, \textbf{m} и \textbf{k} (\textbf{1} ≤ \textbf{n} ≤ \textbf{10^4}, \textbf{1} ≤ \textbf{m} ≤ \textbf{10^5}, \textbf{1} ≤ \textbf{k} ≤ \textbf{10^5}). \OutputFile В выходном файле должно содержаться одно целое число --- минимальное количество значков, которое требуется подготовить.
Time limit 1 second
Memory limit 64 MiB
Input example #1
3 4 2
Output example #1
9

Example description: В приведенном примере необходимо подготовить 6 красных и 3 белых значка.