#P1760. *【矩阵乘法】4:Tn=(F1+2*F2+3*F3+...+n*Fn)

*【矩阵乘法】4:Tn=(F1+2*F2+3*F3+...+n*Fn)

【题意】

SnS_n 表示 Fibonacci 前 n n 项和 modm \mod m 的值,即 Sn=(F1+F2++Fn)modm S_n=(F_1+F_2+ \dots +F_n)\bmod m,其中 F1=F2=1,Fi=Fi1+Fi2F_1=F_2=1, F_i=F_{i-1}+F_{i-2}。可这对佳佳来说还是小菜一碟。

终于,她找到了一个自己解决不了的问题: $T_n=(F_1+2 \times F_2+3 \times F_3+...+n \times F_n)\bmod m$ 表示 Fibonacci 数列前 nn 项变形后的和 %m 的值。

已知: nnmm,求 TnT_n 的值。

【输入格式】

输入数据包括一行,两个用空格隔开的整数 n m n \ m

【输出格式】

仅一行, TnT_n 的值。

5 5
1

【样例解释】

$T_5=(1+2\times 1+3\times 2+4\times 3+5\times 5)\bmod 5=1$

【数据范围与提示】

对于 30% 的数据,1n10001\le n \le 1000

对于 60% 的数据,1m10001\le m \le 1000

对于 100% 的数据,1n,m23111\le n,m \le 2^{31}-1