Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include<algorithm>
- #include<set>
- using namespace std;
- void permute(string in, int i, set<string> se){
- if(in.length() == i)
- {
- se.insert(in);
- return;
- }
- if(i > in.length())
- return;
- // cout<<in<<endl;
- for(int k = 0; k < in.length(); k++){
- swap(in[k], in[i]);
- permute(in, i + 1, se);
- swap(in[k], in[i]);
- }
- return;
- }
- int main() {
- // char in[1000];
- string in;
- cin>>in;
- set<string> se;
- set<string>:: iterator itr;
- permute(in, 0, se);
- for (itr = se.begin(); itr != se.end(); ++itr)
- {
- cout << *itr<<endl;
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment