fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. string s;
  6. cin>>s;
  7. int n = s.size();
  8. unordered_map<int,int> k;
  9. int cnt = 0;
  10. for(int i=0;i<=n-1;i++){
  11. if(s[i]=='B'){
  12. cnt++;
  13. k[i]++;
  14. }
  15. }
  16. int ans = 0;
  17.  
  18. for(int i = 0 ;i < s.size();i++){
  19. int com = 0;
  20. if(n%2 == 0){
  21. for(int i = 0 ; i < n ;i = i+2){
  22. if(k[i] == 'B')com++;
  23. }
  24.  
  25. for(int i = 1 ; i < n ;i = i+2){
  26. if(k[i] == 'B')com++;
  27. }
  28. ans = n/2 - com;
  29. }else if(n%2 == 1){
  30. if(cnt == n/2){
  31. for(int i = 1 ; i < n ;i = i+2){
  32. if(k[i] == 'B')com++;
  33. }
  34. ans = n/2 - com;
  35. }else if(cnt == (n/2+1)){
  36. for(int i = 0 ; i < n ;i = i+2){
  37. if(k[i] == 'B')com++;
  38. }
  39. ans = n/2 - com;
  40. }
  41. }else cout<<-1;
  42. }
  43. cout<<ans;
  44. }
  45.  
  46.  
  47.  
Success #stdin #stdout 0s 5312KB
stdin
BEEBB
stdout
2