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 |