본문 바로가기

공부합시다

순열

void swap(int &a, int &b)
{
    int temp = a;
    a = b;
    b = temp;
}

void permutation(vector<int> &v, int depth, int n, int r)
{
    if (depth == r)
    {
        for(int i = 0; i < r; i++)
            cout << v[i] << " ";
        cout << endl;
        return;
    }
    
    for(int i = depth; i < n; i++)
    {
        swap(v[depth], v[i]);
        permutation(v, depth + 1, n, r);
        swap(v[depth], v[i]);
    }
}

'공부합시다' 카테고리의 다른 글

세그먼트 트리  (0) 2023.01.07
플로이드 와샬 알고리즘  (0) 2022.12.17
offset 대신 포인터로 사용하기  (0) 2022.08.31
중복순열  (0) 2022.05.14
c++ 한 줄 입력  (0) 2022.04.05