Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:256 MB

#3025. 「NOI2015」寿司晚宴

统计

题目描述

为了庆祝 NOI 的成功开幕,主办方为大家准备了一场寿司晚宴。小 G 和小 W 作为参加 NOI 的选手,也被邀请参加了寿司晚宴。

在晚宴上,主办方为大家提供了 $n−1$ 种不同的寿司,编号 $1,2,3, \ldots , n−1$,其中第 $i$ 种寿司的美味度为 $i+1$ (即寿司的美味度为从 $2$ 到 $n$)。

现在小 G 和小 W 希望每人选一些寿司种类来品尝,他们规定一种品尝方案为不和谐的当且仅当:小 G 品尝的寿司种类中存在一种美味度为 $x$ 的寿司,小 W 品尝的寿司中存在一种美味度为 $y$ 的寿司,而 $x$ 与 $y$ 不互质。

现在小 G 和小 W 希望统计一共有多少种和谐的品尝寿司的方案(对给定的正整数 $p$ 取模)。注意一个人可以不吃任何寿司。

输入格式

输入文件的第一行包含两个正整数 $n,p$,中间用单个空格隔开,表示共有 $n$ 种寿司,最终和谐的方案数要对 $p$ 取模。

输出格式

输出一行包含一个整数,表示所求的方案模 $p$ 的结果。

样例1

input

3 10000

output

9

样例2

input

4 10000

output

21

样例3

input

100 100000000

output

3107203

数据范围与提示

$2 \leq n \leq 500, \ 0 < p \leq 1000000000$