Se citeşte un număr natural nenul n. Să se afişeze, în ordine invers lexicografică, permutările mulţimii {1,2,..,n}.
Date de intrare
Fişierul de intrare permutari1.in conţine pe prima linie numărul n.
Date de ieşire
Fişierul de ieşire permutari1.out va conţine pe fiecare linie elementele unei permutări, separate prin câte un spaţiu.
Restricţii şi precizări
0 < n < 9
Exemplu
permutari1.in
3
permutari1.out
3 2 1
3 1 2
2 3 1
2 1 3
1 3 2
1 2 3
cu backtracking va rog
Răspunsuri la întrebare
Răspuns de
11
#include<fstream>using namespace std;ifstream f("permutari1.in");ofstream g("permutari1.out");int n, v[9];void citire(){ f>>n;}void scrie(){ for(int i=1;i<=n;++i) g<<v[i]<<' '; g<<'\n';}int verificare(int k){ for(int i=1;i<k;++i) if(v[i]==v[k]) return 0; return 1;}void backtracking(int k){ if(k==n+1) scrie(); else for(int i=n;i>=1;--i) { v[k]=i; if(verificare(k)==1) backtracking(k+1); }}int main(){ citire(); backtracking(1); g.close(); return 0;}
CancerousKiddo:
https://pastebin.com/CK59dQ02 daca nu vrei sa stai sa rearanjezi codu
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Chimie,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă