CF144A Arrival of the General

题目描述

国防部派一位将军前来视察 Super Secret Military Squad,该部队由 Colonel SuperDuper 指挥。得知消息后,Colonel 命令所有 $n$ 名士兵在操场上集合。 根据军事条令,士兵们应按照身高不递增顺序排列。但由于时间紧迫,士兵们只是随意排成了一行。然而,将军眼神不太好,他只要求队伍的第一个士兵身高最高,最后一个士兵身高最低。请注意,其他士兵的排列顺序无关紧要,包括存在多个身高最大或最小的士兵的情况。只有第一名和最后一名士兵的身高重要。 例如,将军会认为身高序列 $(4, 3, 4, 2, 1, 1)$ 排列正确,但认为 $(4, 3, 1, 2, 2)$ 排列错误。 每秒钟,Colonel 可以交换任意两个相邻的士兵。请你帮助他计算,至少需要多少秒才能让队伍排列成将军认为正确的样子。

输入格式

第一行输入一个整数 $n$($2 \leq n \leq 100$),代表士兵的数量。第二行输入 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \leq a_i \leq 100$),表示从队伍最前面到最后每位士兵的身高。这些数字用空格隔开。$a_1, a_2, \ldots, a_n$ 不一定互不相同。

输出格式

输出一个整数,表示将队伍变为将军满意状态所需的最小秒数。

说明/提示

在第一个样例中,Colonel 需要将第一名和第二名士兵交换,然后将第三名和第四名士兵交换。总共需要 2 秒。士兵队伍最终顺序为 $(4, 3, 2, 1)$。 在第二个样例中,Colonel 可以按照以下顺序交换士兵: 1. $(10,\,10,\,58,\,31,\,63,\,40,\,76)$ 2. $(10,\,58,\,10,\,31,\,63,\,40,\,76)$ 3. $(10,\,58,\,10,\,31,\,63,\,76,\,40)$ 4. $(10,\,58,\,10,\,31,\,76,\,63,\,40)$ 5. $(10,\,58,\,31,\,10,\,76,\,63,\,40)$ 6. $(10,\,58,\,31,\,76,\,10,\,63,\,40)$ 7. $(10,\,58,\,31,\,76,\,63,\,10,\,40)$ 8. $(10,\,58,\,31,\,76,\,63,\,10,\,40)$ 9. $(10,\,76,\,58,\,31,\,63,\,10,\,40)$ 10. $(76,\,10,\,58,\,31,\,63,\,10,\,40)$ 11. $(76,\,10,\,58,\,31,\,63,\,40,\,10)$ 由 ChatGPT 5 翻译