#P51411. 「2020-2021 集训队作业」Permutation

「2020-2021 集训队作业」Permutation

题目描述

给出 n,Pn,P,设

fn=(p is a permutation of length n[i[1,n],pi=i][i[1,n],pi=ni+1])mod Pf_n = \left(\sum_{p\text{ is a permutation of length }n} [\exists i \in [1,n] , p_i = i][\exists i \in [1,n] , p_i = n - i + 1]\right) \bmod\ P

你需要求出 i=1nfi\bigoplus_{i=1}^n f_i 的值。

输入格式

输入一行两个整数 n,Pn,P

输出格式

一行一个整数表示答案。

样例

2 100000
1

n=1n=1 时排列 (1)(1) 满足上述两个条件,故 f1=1f_1 = 1

n=2n=2 时排列 (1,2),(2,1)(1,2),(2,1) 均有一个条件不满足,故 f2=0f_2 = 0

所以答案为 10=11\oplus 0 = 1

数据范围与提示

对于 100%100\% 的数据,1n107,n+1P1091 \leq n \leq 10^7 , n + 1 \leq P \leq 10^9

测试点编号 nn \leq PP
11 1818 无特殊限制
22 6060
33 300300
44 10001000 =998244353=998244353
55 50005000
66 3×1043 \times 10^4
77 10510^5
88 3×1053 \times 10^5
99 5×1055 \times 10^5
1010 10001000 是质数
1111 10410^4
1212 10510^5
1313 10610^6
1414 10710^7
1515 50005000 无特殊限制
1616 3×1043 \times 10^4
1717 10510^5
1818 5×1055 \times 10^5
1919 2×1062 \times 10^6
2020 10710^7