sábado, 17 de julio de 2010

Implementación de un backtracking Variaciones sin repetición

void variac(int n, int m, int j, vector& used, vector& seq)
{
if(j == m){
for(unsigned int i=0;i cout << seq[i] + 1<<",";
cout << endl;
}
else{

for(int i=0;i if(!used[i]){
used[i] = true;
seq[j] = i;
variac(n,m,j+1,used,seq);
used[i] = false;
}
}
}
}

int main(){

int n = 5;
int m = 2;
for(int i=0;i used.push_back(false);


for(int i=0;i seq.push_back(0);

variac(n,m,0,used,seq);
}

No hay comentarios:

Publicar un comentario