编程题
### 问题描述 丽丽是一名热爱彩虹的艺术家,她正在创建一幅特殊的彩虹画作。据说这幅画作需要使用 $n$ 种颜色,每种颜色都对应一个彩虹色带上的色块。丽丽需要将这些颜色块放置在正确的位置上,以完成她心目中的完美彩虹画。 然而,每个位置都有一个数字,代表该位置所需颜色的编号。每种颜色块只能放在与其编号不同的位置上。也就是说,颜色块 $i$ 只能放在编号不等于 $i$ 的位置上。 现在,请你计算有多少种合法的方案,可以将这 $n$ 种颜色块放置在这 $n$ 个位置上,使得每个位置都有一个颜色块,并且颜色块的放置顺序符合丽丽的要求。 ### 输入格式 第一行一个整数 $n$($1\leq n \leq 200$),表示颜色块和位置的数量。 第二行 $n$ 个整数 $a_1,a_2,\cdots,a_n$($1\leq a_i \leq n$),表示每个位置对应的颜色编号。 ### 输出格式 输出一个整数,表示合法的方案数。由于答案可能很大,你需要对 $10^9+7$ 取模。 ### 样例输入 ``` 3 2 1 3 ``` ### 样例输出 ``` 2 ``` ### 数据范围 $1 \leq n \leq 2\times 10^3$,$1 \leq a_i \leq n$。
查看答案
赣ICP备20007335号-2