签字游戏(game)
题目描述: 你们班一共 n 个人,编程考试后每人都得到一个分数,老师开始玩一个签字游戏,在教室环 形排布了 n 个位置, 位置从 1 开始编号 ai,一直到 n 号,每个位置上有一个人。 签字游戏 开始了,签字本会从 1 号位置开始传递,一直传递到 n 号位置, 传到 n 号时,n 号会再传 回给 1 号,从而开始新的一轮传递。 签字的顺序必须按照分数来排序,得分最高的最先签 字。也就是说,如果签字本轮到了某个人,但这个人并不是在场还未签字的人中分数最高的, 那么他这轮只能轮空,传给下一个人。 签字本只能单向传递,不可逆传,签字本每次从 n 号传到 1 号手上算是一轮。不满一圈的也算一轮。各个人分数保证不相同。为了签字本顺利 签完,老师向你求助,求最少传递多少轮可以完成签字。
输入描述: 第一行,一个正整数 n,表示有 n 个人参与 第二行 n 个正整数,第 ai 个数表示落座在第 i 个位置的人的得分
输出描述: 第一行,一个正整数,完成签字的最少轮数。
输入样例 1: 5 1 5 8 4 3 输出样例 1: 3 样例说明:第一轮:8,第二轮:5 4 3,第三轮:1
输入样例 2: 10 11 8 5 7 1 6 2 3 4 10 输出样例 2: 6 样例说明:第一轮:11 10 第二轮 8 7 6 第三轮 5 4 第四轮 3 第五轮 2 第六轮 1
数据范围: 1≤n≤8×105,1≤ai≤106