#include <bits/stdc++.h>
using namespace std;
void fn(vector<int>&v,int k,int n,vector<vector<int>>&ans){
if(k==n)
return;
vector<int>temp;
for(int i=k;i<n;i++){
temp.push_back(v[i]);
ans.push_back(temp);
fn(v,k+1,n,ans);
}
}
int main() {
vector<int>v={1,2,3};
int n=3;
vector<vector<int>>ans;
fn(v,0,3,ans);
for(int i=0;i<ans.size();i++){
for(int j=0;j<ans[0].size();j++)
cout<<ans[i][j]<<" ";
cout<<endl;
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2b2lkIGZuKHZlY3RvcjxpbnQ+JnYsaW50IGssaW50IG4sdmVjdG9yPHZlY3RvcjxpbnQ+PiZhbnMpewoJaWYoaz09bikKCXJldHVybjsKCQoJdmVjdG9yPGludD50ZW1wOwoJZm9yKGludCBpPWs7aTxuO2krKyl7CgkJdGVtcC5wdXNoX2JhY2sodltpXSk7CgkJYW5zLnB1c2hfYmFjayh0ZW1wKTsKCQlmbih2LGsrMSxuLGFucyk7Cgl9Cn0KCmludCBtYWluKCkgewoJdmVjdG9yPGludD52PXsxLDIsM307CglpbnQgbj0zOwoJdmVjdG9yPHZlY3RvcjxpbnQ+PmFuczsKCWZuKHYsMCwzLGFucyk7Cglmb3IoaW50IGk9MDtpPGFucy5zaXplKCk7aSsrKXsKCQlmb3IoaW50IGo9MDtqPGFuc1swXS5zaXplKCk7aisrKQoJCWNvdXQ8PGFuc1tpXVtqXTw8IiAiOwoJCWNvdXQ8PGVuZGw7Cgl9Cn0=