Statistics

Problem Statement for "LittleElephantAndBallsAgain"

Problem Statement

Little Elephant from the Zoo of Lviv likes balls. He has some balls arranged in a row. Each of those balls has one of three possible colors: red, green, or blue.

You are given a String S. This string represents all the balls that are initially in the row (in the order from left to right). Red, green, and blue balls are represented by characters 'R', 'G', and 'B', respectively. In one turn Little Elephant can remove either the first ball in the row, or the last one.

Little Elephant wants to obtain a row in which all balls have the same color. Return the smallest number of turns in which this can be done.

Definition

Class:
LittleElephantAndBallsAgain
Method:
getNumber
Parameters:
String
Returns:
int
Method signature:
int getNumber(String S)
(be sure your method is public)

Constraints

  • S will contain between 1 and 50 characters, inclusive.
  • S will consist only of characters 'R', 'G' and 'B'.

Examples

  1. "RRGGBB"

    Returns: 4

    One possible optimal solution is to remove 2 balls from the front and 2 from the back. The total number of turns is 2+2 = 4. After those 4 turns only green balls remained on the table.

  2. "R"

    Returns: 0

    You don't need to do any turns in this case, so the answer is 0.

  3. "RGBRGB"

    Returns: 5

    In any optimal solution only one of these six balls will remain on the table.

  4. "RGGGBB"

    Returns: 3

  5. "RGBRBRGRGRBBBGRBRBRGBGBBBGRGBBBBRGBGRRGGRRRGRBBBBR"

    Returns: 46

  6. "RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR"

    Returns: 0

  7. "GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG"

    Returns: 0

  8. "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"

    Returns: 0

  9. "BGGBGRRGBBBGRGBGBRRRRBRGGRBBBBRBRRGBGGRBRB"

    Returns: 38

  10. "RBRGBGBBGRRGBRGGGBBRRGGBGGBRBRGBRR"

    Returns: 31

  11. "BRBRGRBGBBGRRBGBGBRRBRBGRRRRBBRBBBGRRBRRRGRB"

    Returns: 40

  12. "BBRGBGBGRGGGRBGRGBRRBBGBBRBGBGRBRBRBG"

    Returns: 34

  13. "RBBRGRBBGB"

    Returns: 8

  14. "GRRRRRGGRBGRBRBGBBGRGBRRB"

    Returns: 20

  15. "GBBBRBBGBGRBGR"

    Returns: 11

  16. "GBRGRRGRGBBRRRRBBBBBGGRRGGBBGBBBRGGRBRBRRBGBBBGRRR"

    Returns: 45

  17. "RBRGBBRGBBBBBRGBRRRRGGGBGGGRRGBBRBBBRGRBGBGGBGRGRB"

    Returns: 45

  18. "GGGGGGRGGBRGBGBGBRRGBGBBBGRGRBBBBRGGRGGGRBGGRBGBBB"

    Returns: 44

  19. "RRBRBBRGRGBBBGBRBBGBGBRRBRBGBBGRBGBBGBBRBBGBGBRGGG"

    Returns: 47

  20. "BRGRRBRBBGBBBGBBRBBGGBGBBBGGBBGRBGBGBGGBGRGBGRBGGR"

    Returns: 47

  21. "RGBGBRBGRRRGGRGRBRGGBGBBGRBBGGBGGGGBGGRRBRGRBBGBGB"

    Returns: 46

  22. "RGGGGBBRRGBGGBRBBGGBRRRRGRGRGGRGGGRBRRRGRRGRBBGBRR"

    Returns: 46

  23. "BRRGBGGRBBRBGRGGBBBRBBGBRGBRBRGGRRBBBRBGGRGGRGBBBR"

    Returns: 47

  24. "RGBRGGRBBRG"

    Returns: 9

  25. "GRGRGRRBRGGBRBGRBRBGGBGRRGRRGGGGRRGBRRBBGRBGGRRBRB"

    Returns: 46

  26. "GRRRRGGGGRRGRRGRGGGRRRGRGGGRGRGRRRGGRRRGRGGGGGRGGG"

    Returns: 45

  27. "GGRGGGGGGRRRRGRRRRRGGRRRGRGGRGRGGRRGGGRRGRRGGGGGRR"

    Returns: 44

  28. "RRGGRRRRRRGGRGRRGGGRRGRRRRRRRGGGRGGGGRRRRRGGRRRRGR"

    Returns: 43

  29. "RGRRRGGGRRRRRRGGRGRGGRGGRRGRRRGGGRGRGGGGGRRGGRGRRG"

    Returns: 44

  30. "GRRGGGGGGGRRGRGGGGRGRRRRGRRRRGGGGGRRGRGRRGGRGRGGRR"

    Returns: 43

  31. "RBBRBBBBBRBRBRRBBRRRBBRBRBBRRRRRBBRRRBRBRBBRBRBBRB"

    Returns: 45

  32. "RRRRBBBRRRRBRRRBRRRBRRBRBRBRRRBRBBRBRRBRRRRBRRRRBB"

    Returns: 46

  33. "RRBRRRRRBRRRRBBRBRBRBRBRRBBRBRRRBRBBRBRRRRRRBRBBBB"

    Returns: 44

  34. "BRRRBRBRBRBBRBRBBRBRBRBRRRBBBBBRBBRRRRBBRBRRRRRRBR"

    Returns: 44

  35. "BBBBBBBBBRRBBRRBRBRBBBBRRRBRRRRRBRRRBBRRRRBRRRBRBB"

    Returns: 41

  36. "BBGGBGBGGBGGGBGBGBBGGGBGBGGGBGBGGGBBBGBGBGBGGGGBGG"

    Returns: 46

  37. "BGGBBBGBGGBGBGBGBBGBBGBGBGBBBBGGBGBGGBBBBBBGGGGBGB"

    Returns: 44

  38. "GGGBGBBBBBBBGGGGGBGGBGBGBGGGGGGBGBBBGBBGGGGBBGBGBB"

    Returns: 43

  39. "BGGBGGGGGBGGBGBBGGGGBGGGGBGBGGBBBBBBGGGBBGBBGGGBBG"

    Returns: 44

  40. "BGGBBBBGGBGBGGGBBBGBBGGBGBBBBBGBGGGGGBGBBBGGGGBGBB"

    Returns: 45

  41. "GGGGGGGBGGGBGGGGGGGGGGGGBGGGGGGGBBGGGGGGRGGGGGGGGG"

    Returns: 38

  42. "GGGGRGGGGGRGBGGGGGGGGGGGGGGGGGGGGGGGBBGGRGGGGGGGBG"

    Returns: 27

  43. "RGGGGRGGRGGGGGGGBGGGRGGBGGRGRRGGRGGGGGGGGGGGGBGGGB"

    Returns: 38

  44. "RBRRRRRRRRRRRRRRRRBBRRBRBRRBRBRRRRRRRRRRRBRBBRRRRR"

    Returns: 34

  45. "RBBRRBRBRRRBRRRBRRRRRRRRRRBRBRRRRRRRRRRRBRRBBRRBRR"

    Returns: 39

  46. "BBRRRBRBBRBRRRBRRRRRRBBRRBRRRRRBRBRRRRRRRRRRRBBRRR"

    Returns: 39

  47. "RGGBBB"

    Returns: 3

  48. "GGGBRR"

    Returns: 3

  49. "RRRRRRRRRRBBBBBBBBBBGGGGGGGGGGG"

    Returns: 20

  50. "RGRRR"

    Returns: 2

  51. "RGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRG"

    Returns: 49

  52. "RRGGG"

    Returns: 2

  53. "GBB"

    Returns: 1

  54. "RGBBB"

    Returns: 2

  55. "RRRRRRRRR"

    Returns: 0

  56. "RRRR"

    Returns: 0

  57. "RR"

    Returns: 0

  58. "RGGG"

    Returns: 1

  59. "RRGGGBB"

    Returns: 4

  60. "RRRRRRR"

    Returns: 0

  61. "BBBBBBBBBBB"

    Returns: 0

  62. "GGBBBB"

    Returns: 2

  63. "RRRRRRRRRR"

    Returns: 0

  64. "RRRRRR"

    Returns: 0

  65. "RRR"

    Returns: 0

  66. "GGGR"

    Returns: 1

  67. "GGGGGGG"

    Returns: 0

  68. "BRGBBBBBB"

    Returns: 3

  69. "RRRGGR"

    Returns: 3

  70. "BBRRRRRRRRRRRR"

    Returns: 2

  71. "GRRGGG"

    Returns: 3

  72. "GGGBBBBBGGGG"

    Returns: 7

  73. "RGBBBBBBBBBBB"

    Returns: 2

  74. "RGG"

    Returns: 1

  75. "RRGGBBRGB"

    Returns: 7


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: