https://www.acmicpc.net/problem/15652
#include<iostream>
using namespace std;
int N, M;
int iArr[9];
void dfs(int k, int cur)
{
if (k == M)
{
for (int i = 0; i < M; i++)
{
//출력;
cout << iArr[i] << " ";
}
cout << '\n';
}
else
{
for (int i = cur; i <= N; i++)
{
iArr[k] = i;
dfs(k+1, i);
}
}
}
int main()
{
cin >> N >> M;
dfs(0, 1);
}
n과 m 응용