C1018 [欢乐赛]烤面包片

内存限制:256 MB 时间限制:1000 ms

题目描述

鸡尾酒最喜欢吃东北的烤面包片了。每次到东北地区的区域赛或者是秦皇岛的wannafly camp,鸡尾酒都会吃很多的烤面包片,即使比赛打铁也觉得不枉此行。

“我想吃烤面包片!!!”这不,半年没吃烤面包片的鸡尾酒看到大家都聚集在秦皇岛参加暑假camp,羡慕地发出了想要的声音。

当鸡尾酒“想要”的时候,他说的话会带三个感叹号来表示非常“想要”。至于有多“想要”,他给了你一个算式让你来体会。

给你两个整数 $n$ 和 $mod$,输出 $n!!!$ 对 $mod$ 求余的结果(每个$!$ 都代表一个阶乘符号)

输入格式

输入共一行包含两个整数依序为 $n$ 和 $mod$,意义如题面所示。($0 \le n \le 10^9,1 \le mod \le 10^9$)

输出

输出一个小于 $mod$ 的非负整数表示答案。

样例

样例输入 1

2 6324

样例输出 1

2

样例输入 2

3 999999999

样例输出 2

731393874

提示

在第一个样例中,由于 $2! = 2$,所以 $2!!! = (((2!)!)!) = ((2!)!) = (2!) = 2$。2模了6324还是2!

所以答案为2。