输入一串数字,输出逆序对
一、O(n^n)
#include<iostream>
using namespace std;
#define MaxSize 10001
int a[MaxSize];
int main()
{
//输入n个数据
int n;
cin >> n;
//边输入,边判断
for (int i = 1; i <= n; i++){
cin >> a[i];
if (i > 1) {//从第二个数据还是往前比较
for (int j = i - 1; j >= 1; j--) {
if (a[i] < a[j])//判断是否为逆序,“是”则输出
cout << "(" << a[j] << " , " << a[i] << ")" << endl;
}
}
}
return 0;
}
输入:
5
3 1 4 5 2
输出:
(3 , 1)
(5 , 2)
(4 , 2)
(3 , 2)