《逆序对》做法; 代码如下:

#include<iostream>
#include<cmath>
using namespace std;
int main(){
  int n,a[102],ans=0;
  cin>>n;
  for(int i=1;i<=n;i++){cin>>a[i];}
  for(int i=1;i<=n-1;i++){
    for(int j=1;j<=n-i;j++){
      if(a[j]>a[j+1]){swap(a[j],a[j+1]);ans++;}
}
}
  cout<<ans;
  return 0;
}

此代码在冒泡排序的基础上加上计数器,每当交换一次就记一次。最后输出计数器(ans)。

0 条评论

目前还没有评论...

信息

ID
143
时间
1000ms
内存
256MiB
难度
6
标签
递交数
15
已通过
11
上传者