Advertisement
Guest User

Untitled

a guest
Oct 17th, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. #include <fstream>
  2. #include <algorithm>
  3. #include <cstring>
  4. using namespace std;
  5. ifstream fin("permrep.in");
  6. ofstream fout("permrep.out");
  7.  
  8. int n,m,x[11],cnt,u[11];
  9. char s[10];
  10. void sortare (char *s)
  11. {
  12. for (int i=0;s[i+1];i++)
  13. for (int j=i+1;s[j];j++)
  14. if(s[i]>s[j])
  15. {
  16. char aux=s[i];
  17. s[i]=s[j];
  18. s[j]=aux;
  19. }
  20. }
  21. void solutie(int k)
  22. {
  23. for (int i=1;i<=k;i++)
  24. {
  25. fout<<s[x[i]];
  26. }
  27. fout<<endl;
  28. }
  29. bool ok (int k)
  30. {
  31. for (int i=1;i<k;i++)
  32. {
  33. if (s[x[k]]==s[x[i]] && x[k]<=x[i])
  34. return false;
  35. }
  36. return true;
  37. }
  38. void Back(int k)
  39. {
  40. for (int i=0;i<n;i++)
  41. {
  42. x[k]=i;
  43. if (u[i]==0 && ok (k))
  44. {
  45. u[i]=1;
  46. if (k==n)
  47. solutie(k);
  48. else
  49. Back(k+1);
  50. u[i]=0;
  51. }
  52.  
  53. }
  54.  
  55. }
  56.  
  57. int main ()
  58. {
  59. fin>>s;
  60. n=strlen(s);
  61. sortare(s);
  62. Back(1);
  63.  
  64.  
  65. fin.close();
  66. fout.close();
  67. return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement