CF150B.Quantity of Strings

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Just in case somebody missed it: this winter is totally cold in Nvodsk! It is so cold that one gets funny thoughts. For example, let's say there are strings with the length exactly nn , based on the alphabet of size mm . Any its substring with length equal to kk is a palindrome. How many such strings exist? Your task is to find their quantity modulo 10000000071000000007 ( 109+710^{9}+7 ). Be careful and don't miss a string or two!

Let us remind you that a string is a palindrome if it can be read the same way in either direction, from the left to the right and from the right to the left.

输入格式

The first and only line contains three integers: nn , mm and kk ( 1<=n,m,k<=20001<=n,m,k<=2000 ).

输出格式

Print a single integer — the number of strings of the described type modulo 10000000071000000007 ( 109+710^{9}+7 ).

输入输出样例

  • 输入#1

    1 1 1
    

    输出#1

    1
    
  • 输入#2

    5 2 4
    

    输出#2

    2
    

说明/提示

In the first sample only one string is valid: "a" (let's denote the only letter of our alphabet as "a").

In the second sample (if we denote the alphabet letters as "a" and "b") the following strings are valid: "aaaaa" and "bbbbb".

首页