eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Конкатенация двух палиндромов

Конкатенация двух палиндромов

Найдите количество способов, которыми можно построить строку длины $n$ используя $k$ латинских букв (размер алфавита равен $k$) в виде конкатенации двух непустых палиндромов. \InputFile Два натуральных числа $n$ и $k~(1 \le n \le 10^5, 1 \le k \le 26)$. \OutputFile Выведите количество способов построить заданную строку. Ответ вывести по модулю $10^9 + 7$. \Examples В первом примере строку длины $4$ из одной буквы ($а$ например) можно построить тремя способами: $a + aaa, aa + aa, aaa + a$.
Ліміт часу 2 секунди
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
4 1
Вихідні дані #1
3
Вхідні дані #2
3 2
Вихідні дані #2
8