Problem Statement
You have several squares arranged in a single row. Each square is currently painted red or green. You can choose any of the squares and paint it over with either color. The goal is that, after painting, every red square is further to the left than any of the green squares. We want you to do it repainting the minimum possible number of squares.
Squares are numbered from left to right. You will be given the initial arrangement as a
Definition
- Class:
- RedAndGreen
- Method:
- minPaints
- Parameters:
- String
- Returns:
- int
- Method signature:
- int minPaints(String row)
- (be sure your method is public)
Constraints
- row will contain between 1 and 50 characters, inclusive.
- Each character of row will be either 'R' or 'G'.
Examples
"RGRGR"
Returns: 2
Paint the squares in the marked positions in the picture below with the opposite color. There are other ways with 2 total paints. RGRGR | | RRRGG
"RRRGGGGG"
Returns: 0
There is no need to paint anything.
"GGGGRRR"
Returns: 3
Paint all the red squares green.
"RGRGRGRGRGRGRGRGR"
Returns: 8
"RRRGGGRGGGRGGRRRGGRRRGR"
Returns: 9
"R"
Returns: 0
"G"
Returns: 0
"RG"
Returns: 0
"GR"
Returns: 1
"GGR"
Returns: 1
"GGGRRRRGRGRRRGRRRRGRGGGRGRRRRRRGGRGRGRGGRRRRGRGGGR"
Returns: 19
"RRRGRRGGGGGGGRGGGRRGRRGRGRGRGRGRGRGGRGGGGRRGGRRGGG"
Returns: 17
"RGRGRGRRGRRGRRGRRGGGGGRRRRGGGRRGRRGGRGGRGRGGRGGGGG"
Returns: 18
"RRRRGGRRRRGGGRRRGRRGRGGRGRGGGRGRGGGRGRGGRRGGRGRRGR"
Returns: 19
"GRRGGRGGGGGRGGRRRGRGGRGRRRGGRGRGRRRGRRRRGRGGRGGRGR"
Returns: 23
"GRRGGGGRRGRRGRGRRRRRRRGGGGGGGGGGGRRRRGGRGGGGRGGRGR"
Returns: 16
"GRRGRRRRGRGGRRGRGRRGRRGRGGGGGGGGRRRRRGGRRRRRGRGRRG"
Returns: 21
"RRGGGGRGRRRGGGGGRRGGGGGGGRGRGGRGRRGRGGGGRRGGGGGGGR"
Returns: 15
"RGGRRGRRGRRRRGRGGGGGGGGRRGGRGGGRGRRGRGRRGRRRGRGRGR"
Returns: 20
"GRGGGRGGGRRRGGGRGGGGGGRGGRGGRGGRGGRGRGRGRRRGRGGRGG"
Returns: 18
"RRRRRRRRRGRGRRRRRRRRRGRRRRRRRRRRRRGRRRRRRRRRRRGGRR"
Returns: 6
"RRRGRRRRGRRRGRRRRRGGGGGRRRGRRGRGRRRRRGRGRRRRRGGRRR"
Returns: 15
"RGRRRRRRGRRRRRRGRRRRRRRRRRGRRGRRRRRRRGRRRRRRRRRRRG"
Returns: 6
"RGRRGRRGRRRRRRRGRRGRGRGRRRRRRRRRRRRRRRRRGRRRRRRRRR"
Returns: 8
"GRRGRGRRRRRGRRRRRRGRRGRGRRRGRRRRRGRRRRGRGRGRRRRGRR"
Returns: 13
"RRRRRRRRRRRGRRRRGRRRRRRRRRGRGRGRRRRRRRRRRRRGRGRGRG"
Returns: 8
"RRRRRRRGGRRGGRGRRRRRRRRRRRRRRGRGRRRRRGRRRRRRRRRRRR"
Returns: 8
"RGRRRRRRRRRRRRGRRRRGRGRRRRRRRRRRRRRRRGRRRRRGGRRRRR"
Returns: 7
"RRRRRRRGGRRRRRRRRRRRRRRGRRRRRRRRRGGRRRRRRRRRRRRRRR"
Returns: 5
"RRRRRRRRRRRRRGGRRRRRRRRRRRRRRRGGRRRRRRRRRGGGRRRRGR"
Returns: 8
"GRGRGGGGGRGGRRRGGGGGRGRGRGGGGGGGGGGRRGGGGRGRRGGRGG"
Returns: 15
"GRGGRRGGGGGGGGGGGGRGRGGGGGRGRRRGRGGGRGRGGGGRGRGGGG"
Returns: 14
"GGGGGRGGGGGGGRGRGGRGGGRGRGGGRGRGRGGGGGGGRRRRRRGGGG"
Returns: 15
"GGGGGGRGRRGRGRGGGRRGGGRGGGRGRRGGGRGGGRGRRGRRGGGGRG"
Returns: 18
"GGRGGGGGGRGRGGGGRRGRRGGGGGGGGGRGGRGGGGRRGGRGGGGGGG"
Returns: 12
"RRRGGRGGGGGGGRGGGRGGRGGGRRRRRGGRRGGGGGGRGRGGRRGGRG"
Returns: 16
"GGGGRGGRGGRRGRGGGGRRGRGGGGGGGGGGGGGRGRRGGGGGGGGGRG"
Returns: 12
"GGGRRGGGGGRGGRGGRGGRGGGGGRGRGGGRGGRGRGRGRRGGRGGRGG"
Returns: 16
"GGGRGGGRGGGGRRGRGGGGRRRRGGGGGRGRGRRGRGGRGGGGGRGGGG"
Returns: 16
"GRGGRGGRGGRGGRRGGGGGGGGRGGGRGRGRGGGGRGGRGGGGGRRGGG"
Returns: 14
"RRRRRRRRGRRGRRRRRRRRRRRG"
Returns: 2
"RRRRRRRGRRRRRRRRGRRGGRRRR"
Returns: 4
"RRRRRRRRRRRRRRGRRRRR"
Returns: 1
"RRRGRRGRRRRRRRRRRRRRRR"
Returns: 2
"RRRRRRRRRRRRRRRRRRRGG"
Returns: 0
"GGGGGGGGGGGGGG"
Returns: 0
"GGRGGGGGGGGGGG"
Returns: 1
"GGGGGGGGGGG"
Returns: 0
"GGGGGGGGGG"
Returns: 0
"GGGGGGGGGG"
Returns: 0
"RRRGRRR"
Returns: 1
"RRRGGGRRRG"
Returns: 3
"GRRRGRGGRR"
Returns: 4
"GGRRGR"
Returns: 3
"RGRGG"
Returns: 1
"GGRR"
Returns: 2
"RGRGGG"
Returns: 1
"GGGR"
Returns: 1
"RR"
Returns: 0
"RGGG"
Returns: 0
"GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG"
Returns: 0
"GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG"
Returns: 0
"RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR"
Returns: 0
"RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR"
Returns: 0
"RRRRRRRRRRRRRRRRRRRRRRRGGGGGGGGGGGGGGGGGGGGGG"
Returns: 0
"GGGGGGGGGGGGGGGGGGGGGRRRRRRRRRRRRRRRRRRRRRRRR"
Returns: 21
"RRRRRRRRRRRRRRRRRRRRRRRGGGGGGGGGGGGG"
Returns: 0
"GGGGGGGGGGGGGGRRRRRRRRRRRRRRRRRRRRRR"
Returns: 14
"RRRRRRRRRRRRRRRRRRGGGGGGGGGGGGGGG"
Returns: 0
"GGGGGGGGGGGGGGGGGGRRRRRRRRRRRRRRR"
Returns: 15
"RRRRRRRRRRRRRGGGGGGGGGGGGGGGGGG"
Returns: 0
"GGGGGGGGGGGGRRRRRRRRRRRRRRRRRRR"
Returns: 12
"RRRRRRRRRRRRRRRGGGGGGGGG"
Returns: 0
"GGGGGGGGGGGRRRRRRRRRRRRR"
Returns: 11
"GRRR"
Returns: 1
"RGGGRRRRGGGRRG"
Returns: 5
"GGRRRGGGGRR"
Returns: 4
"RRRRRGRR"
Returns: 1
"GGRRR"
Returns: 2
"RRRRGRRRR"
Returns: 1
"RRGRR"
Returns: 1
"RRRRRR"
Returns: 0
"RGRGRGRR"
Returns: 3
"GRRRRR"
Returns: 1
"RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR"
Returns: 0
"RGRRRRRGGGGGRRRRRRRRRRGGGGRGGGGGRRRRGRRRRRGGRRGGRR"
Returns: 20
"RGRRRGGRG"
Returns: 2
"RRRRR"
Returns: 0
"GGGRRRR"
Returns: 3
"GRRRRRRR"
Returns: 1
"RGRRRRRRRRRRRRG"
Returns: 1
"RGGRRRRG"
Returns: 2
"GGG"
Returns: 0
"RRRGRRGGR"
Returns: 2
"RGRRGGR"
Returns: 2
"GRRRRRRRRRRRR"
Returns: 1
"RRGRRGGGGG"
Returns: 1
"RRRRRGGGGGG"
Returns: 0
"RRRGRRRRRRRGGGGGGRGGG"
Returns: 2
"RRRR"
Returns: 0
"RGRGRGRGRGRRGRGRRRRRGGGGGRRGGGGG"
Returns: 9
"GGGG"
Returns: 0
"GRRRGGGR"
Returns: 2
"GGGGGGRGRGRRR"
Returns: 5
"GGGRRRRR"
Returns: 3
"GRRRGGGGRR"
Returns: 3
"RRR"
Returns: 0
"RGRRRGGGGRG"
Returns: 2
"RGRGRGRGRGRRGRGRRRRRGGRRRGGRRGRRRRGRGRGGGGRRGGGGG"
Returns: 16
"GRRRG"
Returns: 1
"RGRRRRRRRRR"
Returns: 1
"RRRGRRRGGGRGGGRGRGRGGGGRGRG"
Returns: 7
"RGRRRRRRR"
Returns: 1
"GRRRR"
Returns: 1
"RGRRRGGGRG"
Returns: 2
"RGRRRRRGGGGRGGGG"
Returns: 2
"RRRRGRRRGGGRGGGG"
Returns: 2
"RGRRRRRRRR"
Returns: 1
"GRRGGGRRRRGRRRRGGGRRG"
Returns: 7
"RGRRRRRRG"
Returns: 1
"RGRRRRR"
Returns: 1
"GRRRRRR"
Returns: 1
"GRRGGGGGGGGGG"
Returns: 1
"RGRRG"
Returns: 1
"GGRRRRRRRR"
Returns: 2
"RGRGRGRGRGRRGRGRRRRRGGRRRGGRRGRRRRGRGRGGRRGGGGG"
Returns: 16
"RGRRRRRGGGGGRG"
Returns: 2
"RGRGRRGRGRRGRGRRGRGRRGRGRRGRGRRGRGRRGRGRRGRGRRGRGR"
Returns: 20
"RGRRR"
Returns: 1
"RGRRRR"
Returns: 1
"RRRRRRR"
Returns: 0
"GGGGRRRR"
Returns: 4
"RGGRRRG"
Returns: 2
"RRGRRRRR"
Returns: 1
"RGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRGRG"
Returns: 24
"RGRRRRRGGG"
Returns: 1
"RGRRGGG"
Returns: 1
"RRGRRGGRGG"
Returns: 2
"RRRRRGRRRRR"
Returns: 1
"RGRRRRG"
Returns: 1
"RGGRRRGG"
Returns: 2
"GGRRRGGR"
Returns: 3
"RGRRRRRGGGGGGGGGRGR"
Returns: 3
"GRRRRGGGGR"
Returns: 2
"RGGRRRRGGRGRGGRRRRRGGGRGGRGGR"
Returns: 10
"GRRRRGGGGG"
Returns: 1
"RRGGRGRRRGRGGGRRRRRRRGGGGGGGRRRRRRRR"
Returns: 14
"GRGRRRRRRR"
Returns: 2
"RRRRRGRRRRRGGGRGGRGRGRGRGRGRGRG"
Returns: 9
"RGRR"
Returns: 1
"RGRRRRGGGGRG"
Returns: 2
"GRRG"
Returns: 1
"GGGRRRGRRRRR"
Returns: 4
"GRRGGGRG"
Returns: 2
"RGRRRGG"
Returns: 1
"GRRGRRRRGGGGGGGGGRR"
Returns: 4
"RRGRRRRRRG"
Returns: 1
"GGRRRR"
Returns: 2
"RRRRRRRR"
Returns: 0
"RRGRRRG"
Returns: 1
"RGRRRGGGGRGRGRRRGGGGRG"
Returns: 7
"GRGRGRRRRGGRRRGRRGRRGRRGRRGGRRGRGRGRGRRRGGRRR"
Returns: 17
"GRRRRRGGGRGR"
Returns: 3
"RGRRRRRRRG"
Returns: 1
"RRRRGRRRGGRG"
Returns: 2
"GGRRRGGGR"
Returns: 3
"GRRRRRRGGGGGGGR"
Returns: 2