南阳oj 233 sort it

来源:互联网 发布:阿里云api 编辑:程序博客网 时间:2024/06/07 17:02

描述
You want to processe a sequence of n distinct integers by swapping two adjacent sequence elements until the sequence is sorted in ascending order. Then how many times it need.
For example, 1 2 3 5 4, we only need one operation : swap 5 and 4.
输入
The input consists of a number of test cases. Each case consists of two lines: the first line contains a positive integer n (n <= 1000); the next line contains a permutation of the n integers from 1 to n.
输出
For each case, output the minimum times need to sort it in ascending order on a single line.
样例输入

31 2 34 4 3 2 1 

样例输出

06

以下附上代码

#include<stdio.h>#include <algorithm>#include <iostream>#include <string.h>#include <math.h>using namespace std;int a[1002];int main(){    int t,n,i,j;    while(~scanf("%d",&n)&&n)    {        int t,i,j,m=0;        for(i=0; i<n; i++)            cin>>a[i];        for(i=0; i<n; i++)            for(j=i+1; j<n; j++)                if(a[i]>a[j])                {                    t=a[i];                    a[i]=a[j];                    a[j]=t;                    m++;                }        cout<<m<<endl;    }    return 0;}
0 0