Mai intai trebuie sa te autentifici.
Cod sursa(job #943492)
| Utilizator | Data | 25 aprilie 2013 17:01:45 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.79 kb |
/// Craciun Catalin (c)
/// Backtracking
/// Generare permutari
#include <fstream>
#include <iostream>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
short int n;
short int V[101];
int main(){
short int k;
bool ok;
f>>n;
k=1;
V[k]=0;
while (k>0){
ok=0;
while (V[k]<n&&!ok){
V[k]++;
ok=1;
for (int i=1;i<k;i++){
if (V[i]==V[k])
ok=0;
}
}
if (!ok)
k--;
else{
if (k==n){
for (int i=1;i<=n;i++)
g<<V[i]<<" ";
g<<"\n";
}
else{
k++;
V[k]=0;
}
}
}
return 0;
}
