Problem Statement
You are given the current arrangement as a
Definition
- Class:
- GirlsAndBoys
- Method:
- sortThem
- Parameters:
- String
- Returns:
- int
- Method signature:
- int sortThem(String row)
- (be sure your method is public)
Constraints
- row will contain between 1 and 50 characters, inclusive.
- Each character in row will be 'G' or 'B'.
Examples
"GGBBG"
Returns: 2
You can swap the rightmost girl with the two boys (one after the other) to get "GGGBB", with a minimum of only 1 pair of adjacent students of different gender.
"BBBBGGGG"
Returns: 0
There is already a single pair of adjacent students of different gender, and there is no arrangement without such pairs at all, so the best solution is to swap nothing.
"BGBGBGBGGGBBGBGBGG"
Returns: 33
"B"
Returns: 0
With only one student, there is not much swapping to do.
"G"
Returns: 0
"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
Returns: 0
"GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG"
Returns: 0
"BBGGBBB"
Returns: 4
"BBBBBGBGBBB"
Returns: 7
"BBBB"
Returns: 0
"BBGBBB"
Returns: 2
"GBGBGG"
Returns: 3
"BGGG"
Returns: 0
"GGGGBG"
Returns: 1
"GGBGBB"
Returns: 1
"GGGG"
Returns: 0
"BBBBBBBBB"
Returns: 0
"BGGBBBGGB"
Returns: 10
"BBBGBBBB"
Returns: 3
"GBBGGGGG"
Returns: 2
"GBGBGGBB"
Returns: 5
"GGGGGBBGG"
Returns: 4
"GGBGGGGBG"
Returns: 6
"BBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
Returns: 0
"BGBBBBBBBBBGBBBGGBBGBBBB"
Returns: 43
"BBBBGGGGBGGGGBBGBBBGBBBGBGGB"
Returns: 94
"BBGGGGBBBBBGBGBGBBBGGBGBBBG"
Returns: 85
"GGBBBGGGBBGGBGBBG"
Returns: 33
"BBBGGBBGBGGGG"
Returns: 7
"BGGGGGGGBGGGGGGGGGGGGGGGG"
Returns: 7
"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
Returns: 0
"BBBBBBBBBBBBGBBGBGBBBBBBBBBBBG"
Returns: 37
"BBGGGBGGBGBBGBBBBBBBGGGBBBBGBBBBBGBBBGBGBBGBG"
Returns: 208
"BBBGGBBBGGGBBGBBBBGGGBBBGGGBBGBGBBGBBGBGGGB"
Returns: 197
"BBBGGBBGBBGGBGBBGBBBGBBGBBBBBGGGGGBBGGB"
Returns: 153
"GBBGBBGGGGBGBGGGGGGGGGBGGBGGBGGBGGGBGGGBGGGGGG"
Returns: 148
"GGGGBGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG"
Returns: 4
"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
Returns: 0
"GBGBBBBGGBGBBGBBBBGGBBBBBBGBBBBBBBBBBBGBBGBBBGBG"
Returns: 196
"GBGGGGBGBBBBBBBBBBBBGGGBGBBBBBGGGBBBBGBBBBBGGGGG"
Returns: 259
"BGGBBGBBBGBBBGGGBGGGGGBBGGGBGBBGGBGBBBBBGGBBGBBB"
Returns: 248
"GGBGGGBGGBGBGGGGGGGGGGGBBBBGBBGGGGGBGGGGGGGGBBGG"
Returns: 226
"GGGGGGGBGGBBGGBGGGGGGBBGBBGGGGGGGGBGBGGGGGGGGGGGB"
Returns: 197
"GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG"
Returns: 0
"BGBBBBBBBBBBBBBBBBBBBBGGBBBBBBBBBGBBBBBBBBBBBBBGBB"
Returns: 109
"BBBBGGGBBGBBGBBBGBBGGBBBBBBGBBBBGBBGBBBBBBBBBBBGGG"
Returns: 238
"BBGGGBBBGGGGBBBGGGGBBBBBGGBGGBBBBBGBBBBBBGGBBBBBBG"
Returns: 212
"BGGBBBGBBGBGGBGBGGBGBGBGBGGBGGGGGBGBGGBGBGBBGGBGGG"
Returns: 243
"GGGGGBGBBGBGBBGGGBGBGGGGGGBGGGGGGBGBGGGGBGGBGGGGGG"
Returns: 190
"GBGBBGGGGBGGGBBGGGGGGBBGGBGGGGBBGGGGGGBBBGBGGGBGGG"
Returns: 258
"GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGBGGGGGGGGGGGGGGGGGGG"
Returns: 19
"GBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGB"
Returns: 300
"BGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBG"
Returns: 300
"BGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBG"
Returns: 312
"GBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGGBBGBG"
Returns: 312
"BBGGGGB"
Returns: 4
"BGBGBGBG"
Returns: 6
"BGB"
Returns: 1
"GBBBGGGGGGGG"
Returns: 3
"BGGGGGGBBBB"
Returns: 6
"GBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGBGB"
Returns: 210
"BGGGGGGGBBBBBBBBB"
Returns: 7
"BGGGGBB"
Returns: 4
"BGGBBBB"
Returns: 2
"BGBBB"
Returns: 1
"GBBBBBGGGGG"
Returns: 5
"BGGGBBB"
Returns: 3
"GBBBBBBBBBGGGGGGGGGGGGG"
Returns: 9
"BBGBBBBBBBBBBB"
Returns: 2
"BGBBBBBB"
Returns: 1
"BGGGGGGGGGGGBBBBBBBBBB"
Returns: 11
"BGGGGBBBBG"
Returns: 9
"GBBBBGGGGGGG"
Returns: 4
"BGBBBBGGBBBBGGBBBBGGGBBGGBB"
Returns: 72
"BGGGGGGGGBBBB"
Returns: 8
"GGBBGBBBBGBGBBGBG"
Returns: 34
"BGGGGBBBBBBGBG"
Returns: 19