Advertisement
Guest User

Untitled

a guest
Dec 7th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4. int p[1000000];
  5. int q[1000000];
  6.  
  7. int main()
  8. {
  9. int t;
  10. cin >> t;
  11. while(t--)
  12. {
  13. int n;
  14. cin >> n;
  15. bool flag=true;
  16. if(n<10) flag=false;
  17. int i=2;
  18. int j=1;
  19. cin >> p[1];
  20. while(i<=n/2)
  21. {
  22.  
  23. cin >> p[i];
  24. if(p[i]!=p[i-1])
  25. {
  26. q[j]=p[i-1];
  27. j++;
  28. }
  29. i++;
  30. }
  31. while(i<=n)
  32. {cin >> p[i];i++;}
  33. if(p[n/2]!=p[n/2+1])
  34. q[j]=p[n/2];
  35. if(j<3) flag=false;
  36. if(flag)
  37. {
  38. int g=0;
  39. i=1;
  40. while(q[1]==p[i])
  41. {g++;i++;}
  42. j=2;
  43. int s=0;
  44. while(q[j]==p[i]||s<=g)
  45. {
  46. s++;
  47. if(p[i]!=q[j])
  48. j++;
  49. i++;
  50. }
  51. int b=0;
  52. j++;
  53. while(q[j])
  54. {
  55. b++;
  56. if(q[j]!=p[i])
  57. j++;
  58. i++;
  59. }
  60. b--;
  61.  
  62. if(g>=b || g>=s && g+b+s>n/2) {g=0;s=0;b=0;}
  63. cout << g << ' ' << s << ' ' << b << '\n';
  64. }
  65. else cout << "0 0 0" << '\n';
  66. }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement