{"trustable":true,"sections":[{"title":"","value":{"format":"HTML","content":"我们提醒,一些最终集合的排列是集合到自身的一一映射。不太正式地说,这是一种重新排列集合元素的方式。例如,可以将集合{1,2,3,4,5}的排列定义如下:\r\u003cbr\u003e\u003cimg src\u003d\"CDN_BASE_URL/0d5deb25e2ea0b1642fa83f2faa00196?v\u003d1700640520\"\u003e\r\u003cbr\u003e这条记录定义了排列P如下:P(1) \u003d 4, P(2) \u003d 1, P(3) \u003d 5, 等等。\r\u003cbr\u003e表达式P(P(1))的值是多少?很明显,P(P(1)) \u003d P(4) \u003d 2。而P(P(3)) \u003d P(5) \u003d 3。很容易看出,如果P(n)是一个排列,那么P(P(n))也是一个排列。在我们的例子中(相信我们)\r\u003cbr\u003e\u003cimg src\u003d\"CDN_BASE_URL/4fc0a068bf10aea0e1df17d54a73ca00?v\u003d1700640520\"\u003e \r\u003cbr\u003e自然地用P2(n) \u003d P(P(n))来表示这个排列。一般形式的定义是:P(n) \u003d P1(n), Pk(n) \u003d P(Pk-1(n))。在排列中有一个非常重要的排列——不移动任何元素的排列:\r\u003cbr\u003e\u003cimg src\u003d\"CDN_BASE_URL/e8c8e8a29b2666d807da5a4d718a0e0e?v\u003d1700640520\"\u003e\r\u003cbr\u003e很明显,对于每个k,满足以下关系:(EN)k \u003d EN。下面的不太平凡的陈述是正确的(我们这里不证明,你可以自己证明):设P(n)是N个元素集合的某个排列。那么存在自然数k,使得Pk \u003d EN。使得Pk \u003d EN的最小自然数k被称为排列P的阶。\r\u003cbr\u003e你的程序应该解决的问题现在以非常简单的方式表述出来:“给定一个排列,找到它的阶。”"}},{"title":"输入","value":{"format":"HTML","content":"标准输入的第一行包含一个自然数N(1 \u0026lt;\u003d N \u0026lt;\u003d 1000),表示被该排列重新排列的集合中的元素数。第二行包含N个自然数,范围从1到N,用空格分隔,定义了一个排列——数字P(1), P(2),…, P(N)。"}},{"title":"输出","value":{"format":"HTML","content":"你应该向标准输出写入一个自然数,即排列的阶。你可以假设答案不会超过10\u003csup\u003e9\u003c/sup\u003e。"}},{"title":"样例","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e5\r\n4 1 5 2 3\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e6\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}