P1116 车厢重组(洛谷)

原题传送门

在这里插入图片描述
思路:水题,用冒泡排序加个记录交换次数即可

代码参考

#include <iostream>
using namespace std;
int main()
{
    
    
    int n,num=0,a[10000];
    cin>>n;
    for(int i = 0;i < n;i++)
        cin>>a[i];
    //比较n-1趟
    for(int i= 1;i <= n-1;i++){
    
    
        for(int j = 0;j < n - i;j++)
            //如果左边的数较大,则交换位置
            if(a[j] > a[j+1]){
    
    
                int temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
                num++;
        }
    }
    cout<<num<<endl;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/Bertil/article/details/106817132