Untitled
unknown
plain_text
2 years ago
751 B
3
Indexable
#include <bits/stdc++.h> using namespace std; ifstream fin("permutari1.in"); ofstream fout("permutari1.out"); int n, v[10], k; void afisare(int k, int v[]){ for(int i=1; i<=k; i++){ fout<<v[i]<<" "; } fout<<endl; } bool isok(int k, int v[]){ for(int i=1; i<=k-1; i++){ if(v[i]==v[k]){ return false; } } return true; } void backtracking(int n, int v[], int k){ for(int i=n; i>=1; i--){ v[k]=i; if(isok(k, v)){ if(k==n){ afisare(k, v); } else{ backtracking(n, v, k+1); } } } } void solve(){ fin>>n; backtracking(n, v, 1); } int main(){ solve(); return 0; }
Editor is loading...