Pagini recente » Cod sursa (job #199250) | Cod sursa (job #188525) | Cod sursa (job #2826774) | Cod sursa (job #1519303) | Cod sursa (job #1145768)
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
ifstream f("sumbultimi.in");
ofstream g("sumbultimi.out");
void Afisare(vector<int> v, int n){
for(int i=1; i<=n; i++)
g<<v[i]<<" ";
g<<"\n";
}
bool valid(vector<int> v, int pos){
for(int i=1; i<pos; i++)
if(v[i] >= v[pos])
return false;
return true;
}
void back(vector<int> &v, int pos, int n){
for(int i=1; i<=n; i++){
v[pos] = i;
if(valid(v, pos)){
Afisare(v, pos);
if(pos < n)
back(v, pos+1, n);
}
}
}
int main()
{
int n;
f>>n;
vector<int> v(n+1, -1);
back(v, 1, n);
return 0;
}