枚举排列

/* 利用STL中的next_permutation枚举排列 */
#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
    int n, s[10];
    int cnt = 0;    //计数共有多少种排列组合

    cin >> n;
    for(int i = 0; i < n; i++)
        cin >> s[i];

    sort(s, s + n);
    do {
        for(int i = 0; i < n; i++)
            cout << s[i] << " " ;
        cout << endl;
        cnt++;
    } while(next_permutation(s, s + n));
    cout << cnt << endl;

    return 0;
}

你可能感兴趣的:(枚举排列)