A51.车厢重组

入门

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转。一个车站的职工发现桥的长度最多能容纳两节车厢,如果将桥旋转 180180 度,则可以把相邻两节车厢的位置交换,用这种方法可以重新排列车厢的顺序。于是他就负责用这座桥将进站的车厢按车厢号从小到大排列。他退休后,火车站决定将这一工作自动化,其中一项重要的工作是编一个程序,输入初始的车厢顺序,计算最少用多少步就能将车厢排序。

车厢的序号在 int 的表示范围内。

输入格式

输入共两行。

第一行是车厢总数 N(0<n10000)N( 0 < n \le 10000)

第二行是 NN 个不同的数表示初始的车厢顺序。

输出格式

输出一个整数,即最少的旋转次数。

输入输出样例

  • 输入#1

    4
    4 3 2 1

    输出#1

    6

说明/提示

样例说明:

第 1 趟:

4 3 交换,得:3 4 2 1
4 2 交换,得:3 2 4 1
4 1 交换,得:3 2 1 4

第 2 趟:

3 2 交换,得:2 3 1 4
3 1 交换,得:2 1 3 4

第 3 趟:

2 1 交换:得:1 2 3 4

综上,总共交换了 6 次,也即旋转了 6 次

首页