Advertisement
oleg_drawer

Untitled

Apr 23rd, 2020
291
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.06 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main() {
  4.     int n;
  5.     string s;
  6.     cin >> n >> s;
  7.     bool flag1 = true;
  8.     bool flag2 = true;
  9.     for(int i = 0; i < n; i++){
  10.         if(s[i] == 'H')
  11.             flag1 = false;
  12.         else
  13.             flag2 = false;
  14.     }
  15.     if(flag1 || flag2){
  16.         cout << 0;
  17.         return 0;
  18.     }
  19.     s += s;
  20.     int maxx = 1000000000;
  21.     for(int i = 0; i < n; i++){
  22.         if(s[i] != 'T')
  23.             continue;
  24.         int cnt = 0; // final pattern : TTHHTT
  25.         int l = i;   // s[l] must -> H
  26.         int r = i+n-1; // s[r] must -> T
  27.         while(s[r] == 'T' && r > i)
  28.             r--;
  29.         while(s[r] == 'H' && r > i)
  30.             r--;
  31.         while(s[l] == 'T' && l < i+n-1)
  32.             l++;
  33.  
  34.         while(l < r){
  35.             l++;
  36.             r--;
  37.             cnt++;
  38.             while(s[l] == 'T' && l < i+n-1)
  39.                 l++;
  40.             while(s[r] == 'H' && r > i)
  41.                 r--;
  42.  
  43.         }
  44.         maxx = min(maxx, cnt);
  45.  
  46.     }
  47.     cout << maxx ;
  48.     return 0;
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement