Advertisement
Guest User

Untitled

a guest
Jan 20th, 2020
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. int s[100],n;
  4. int valid (int k);
  5. void afisare ();
  6. void backt (int k)
  7. {
  8. int val;
  9. for (val=1;val<=n;val=val+2)
  10. {
  11. s[k]=val;
  12. if (valid (k))
  13. if (k>=n-1) afisare ();
  14. else backt (k+2);
  15.  
  16. }
  17. }
  18. int valid (int k)
  19. {
  20. int i;
  21. for (i=1;i<k;i++)
  22. if (s[i]==s[k]) return 0;
  23. return 1;
  24. }
  25. void afisare ()
  26. {
  27. for (int i=1; i<=n;i++)
  28. cout << s[i] << " ";
  29. cout << endl;
  30. }
  31. int main ()
  32. {
  33. cin >> n;
  34. for (int i=1; i<=n;i++)
  35. s[i]=i;
  36. backt (1);
  37. }
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47. //
  48.  
  49.  
  50. #include <bits/stdc++.h>
  51. using namespace std;
  52. ifstream fin("anagrame1.in");
  53. ofstream fout("anagrame1.out");
  54. char a[10];
  55. char b[10];
  56. bool caract[10];
  57.  
  58. void bkt(int k)
  59. {
  60. if(k == strlen(a))
  61. {
  62. fout << b << '\n';
  63. return;
  64. }
  65. for(int i = 0; i < strlen(a); i++)
  66. {
  67. if(!caract[i])
  68. {
  69. caract[i] = 1;
  70. b[k] = a[i];
  71. bkt(k + 1);
  72. caract[i] = 0;
  73. }
  74. }
  75. }
  76.  
  77. int main()
  78. {
  79. fin>>a;
  80. sort(a,a+strlen(a));
  81. strcpy(b,a);
  82. bkt(0);
  83. }
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90. ///
  91.  
  92.  
  93. #include <bits/stdc++.h>
  94. using namespace std;
  95. int s[100],n;
  96. char cuv[100];
  97. int valid (int k);
  98. void afisare ();
  99. void backt (int k)
  100. {
  101. int val;
  102. for (val=1;val<=n;val++)
  103. {
  104. s[k]=val;
  105. if (valid (k))
  106. if (k==n) afisare ();
  107. else backt (k+1);
  108.  
  109. }
  110. }
  111. int valid (int k)
  112. {
  113. int i;
  114. if (k==1)
  115. if (strchr("aeiou", cuv[s[1]-1])==0) return 0;
  116. if (k==n)
  117. if (strchr("aeiou", cuv[s[n]-1])==0) return 0;
  118. for (i=1;i<k;i++)
  119. if (s[i]==s[k])
  120. return 0;
  121.  
  122. return 1;
  123. }
  124. void afisare ()
  125. {
  126. for (int i=1; i<=n;i++)
  127. cout << cuv[s[i]-1];
  128. cout << endl;
  129. }
  130. int main ()
  131. {
  132. cin >> cuv;
  133. n=strlen(cuv);
  134. sort (cuv ,cuv+n);
  135. for (int i=1; i<=n;i++)
  136. s[i]=i;
  137. backt (1);
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement