特殊子集
时间限制:2s
空间限制:1024MB
题目描述
令 S={1,2,…,N}。给定一个从 S 到 S 的函数 f,其中 f(i)=fi。
求满足下列两个条件的非空子集 T⊆S 的数量,并对 998244353 取模:
- 对任意 a∈T,均有 f(a)∈T;
- 对任意不同的 a,b∈T,均有 f(a)=f(b)。
输入格式
第一行输入整数 N。第二行输入 N 个整数 f1,f2,…,fN。
输出格式
输出满足条件的非空子集数量对 998244353 取模的结果。
样例输入 1
2
2 1
样例输出 1
1
样例输入 2
2
1 1
样例输出 2
1
样例输入 3
3
1 2 3
样例输出 3
7
数据范围
对于所有数据,1≤N≤2×105,1≤fi≤N。
| 子任务编号 |
分值 |
特殊限制 |
| 1 |
14 |
N≤20 |
| 2 |
20 |
f 是一个排列 |
| 3 |
36 |
N≤3000 |
| 4 |
30 |
无特殊限制 |