Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.64 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int ct,ans;
  4. string input,res;
  5. int main()
  6. {
  7. // +aa 2
  8. // +aba 2
  9. // +aab, abb 2
  10. // +aaa 3
  11. // abac, baca 2
  12. // +abab 3
  13. // +aabb 3
  14. // +abba 4
  15. // +baaa, abaa, aaba, aaab 3
  16. // +aaaa 5
  17. cin>>input;
  18. for (int i = 0; i < (1 << 6); ++i)
  19. {
  20. string s = "";
  21. for (int j = 0; j < 6; ++j)
  22. {
  23. s += input[j];
  24. if ((i>>j) & 1) {
  25. s += '-';
  26. }
  27. }
  28. s += input[6];
  29. cout<<s << "\n";
  30. ct = 0;
  31. for (int j = 0; j < s.size(); ++j)
  32. {
  33. if(s[j] != '-'){
  34. if(s[j] == s[j+1] && ((j - 1 >= 0 || s[j-1] == '-') && (j + 2 >= s.size() || s[j+2] == '-')))
  35. ct+=2;//aa
  36. else if(s[j] == s[j+1] && s[j+1] == s[j+2] && ((j - 1 <= -1 || s[j-1] == '-') && (j + 3 >= s.size() || s[j+3] == '-')))//777-7777
  37. ct+=3;//aaa
  38. else if(s[j] == s[j+1] && s[j+1] == s[j+2] && s[j+2] == s[j+3] && ((j - 1 <= -1 ||s[j-1] == '-') && (j + 4 >= s.size() || s[j+4] == '-')))
  39. ct+=5; //aaaa
  40.  
  41. else if(s[j] == s[j+2] && s[j] != s[j+1] && ((j - 1 >= 0 || s[j-1] == '-') && (j + 2 >= s.size() || s[j+2] == '-')))
  42. ct+=2; //aba
  43. else if(((s[j] == s[j+1] && s[j] != s[j+2]) || (s[j+1] == s[j+2] && s[j] != s[j+1])) && ((j - 1 >= 0 || s[j-1] == '-') && (j + 2 >= s.size() || s[j+2] == '-')))
  44. ct+=2; //aab abb
  45.  
  46. else if(s[j] == s[j+1] && s[j+2] == s[j+3] && s[j] != s[j+2] && ((j - 1 >= 0 || s[j-1] == '-') && (j + 4 >= s.size() || s[j+4] == '-')))
  47. ct+=3; //aabb
  48. else if(s[j] == s[j+2] && s[j+1] == s[j+3] && s[j] != s[j+1] && ((j - 1 >= 0 || s[j-1] == '-') && (j + 4 >= s.size() || s[j+4] == '-')))
  49. ct+=3; //abab
  50. else if(s[j] == s[j+3] && s[j+1] == s[j+2] && s[j] != s[j+1] && ((j - 1 >= 0 || s[j-1] == '-') && (j + 4 >= s.size() || s[j+4] == '-')))
  51. ct+=4; //abba
  52.  
  53. else if((s[j] != s[j+1] && s[j+1] == s[j+2] && s[j+2] == s[j+3]) ||
  54. (s[j] != s[j+1] && s[j] == s[j+2] && s[j+2] == s[j+3]) ||
  55. (s[j] != s[j+2] && s[j] == s[j+1] && s[j+1] == s[j+3]) ||
  56. (s[j] != s[j+3] && s[j] == s[j+1] && s[j+1] == s[j+2]))
  57. ct+=3;// baaa, abaa, aaba, aaab
  58. }
  59. }
  60.  
  61. if (ct > ans) {
  62. ans = ct;
  63. res=s;
  64. }
  65. }
  66. cout<<res<<endl<<ct;
  67. return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement