#include <iostream>
#include <cstdio>
#include <cstring>
#include <vector>
using namespace std;
#define siz 20
char as[siz];
vector <char> vec;
int n,color[siz]={0};
void Permutation(){
if(vec.size()==n){
for(int i=0;i<n;i++)
printf("%c",vec[i]);
puts("");
}
for(int i=0;i<n;i++){
if(!color[i]){
vec.push_back(as[i]);
color[i]=1;
Permutation();
vec.pop_back();
color[i]=0;
}
}
}
int main()
{
while(scanf("%s",&as)==1){
n=strlen(as);
Permutation();
}
return 0;
}
Sunday, November 4, 2012
BackTracking Algorithm (Basic Permutation)
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment