#include <iostream>
using namespace std;
#include<vector>
void func(vector<vector<int> > arr,int row,vector<int> &temp,vector<vector<int> > &ans)
{
if(row>=arr.size())
{
ans.push_back(temp);
return;
}
for(int i=0;i<arr[row].size();i++)
{
temp.push_back(arr[row][i]);
func(arr,row+1,temp,ans);
temp.pop_back();
}
}
int main()
{
vector<int> temp;
vector<vector<int> > ans;
vector<vector<int> > arr(3,vector<int>(3));
arr[0][0]=1;arr[0][1]=2;arr[0][2]=3;
arr[1][0]=4;arr[1][1]=5;arr[1][2]=6;
arr[2][0]=7;arr[2][1]=8;arr[2][2]=9;
func(arr,0,temp,ans);
for(auto i:ans)
{
for(auto j:i)
cout<<j<<" ";
cout<<endl;
}
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwojaW5jbHVkZTx2ZWN0b3I+Cgp2b2lkIGZ1bmModmVjdG9yPHZlY3RvcjxpbnQ+ID4gYXJyLGludCByb3csdmVjdG9yPGludD4gJnRlbXAsdmVjdG9yPHZlY3RvcjxpbnQ+ID4gJmFucykKewoJaWYocm93Pj1hcnIuc2l6ZSgpKQoJewoJCWFucy5wdXNoX2JhY2sodGVtcCk7CgkJcmV0dXJuOwoJfQoJZm9yKGludCBpPTA7aTxhcnJbcm93XS5zaXplKCk7aSsrKQoJewoJCXRlbXAucHVzaF9iYWNrKGFycltyb3ddW2ldKTsKCQlmdW5jKGFycixyb3crMSx0ZW1wLGFucyk7CgkJdGVtcC5wb3BfYmFjaygpOwoJfQp9CgppbnQgbWFpbigpCnsKCXZlY3RvcjxpbnQ+IHRlbXA7Cgl2ZWN0b3I8dmVjdG9yPGludD4gPiBhbnM7Cgl2ZWN0b3I8dmVjdG9yPGludD4gPiBhcnIoMyx2ZWN0b3I8aW50PigzKSk7CglhcnJbMF1bMF09MTthcnJbMF1bMV09MjthcnJbMF1bMl09MzsKCWFyclsxXVswXT00O2FyclsxXVsxXT01O2FyclsxXVsyXT02OwoJYXJyWzJdWzBdPTc7YXJyWzJdWzFdPTg7YXJyWzJdWzJdPTk7CglmdW5jKGFyciwwLHRlbXAsYW5zKTsKCWZvcihhdXRvIGk6YW5zKQoJewoJCWZvcihhdXRvIGo6aSkKCQkJY291dDw8ajw8IiAiOwoJCWNvdXQ8PGVuZGw7Cgl9CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglyZXR1cm4gMDsKfQ==