4632 - 蓝桥杯:真题 斐波那契

通过次数

1

提交次数

3

时间限制 : 1 秒
内存限制 : 256 MB

斐波那契数列大家都非常熟悉。它的定义是:

  f(x) = 1 .... (x=1,2)   f(x) = f(x-1) + f(x-2) .... (x>2)

  对于给定的整数 n 和 m,我们希望求出:   f(1) + f(2) + ... + f(n) 的值。但这个值可能非常大,所以我们把它对 f(m) 取模。   公式如下 但这个数字依然很大,所以需要再对 p 求模。

输入

输入为一行用空格分开的整数 n m p (0 < n, m, p < 10^18)

输出

 输出为1个整数,表示答案

样例

输入

2 3 5

输出

0

输入

15 11 29

输出

25