Statistics

Problem Statement for "BlackAndWhiteSolitaire"

Problem Statement

Manao has N cards arranged in a sequence. He numbered them from left to right with numbers from 0 to N-1. Each card is colored black on one side and white on the other. Initially, each of the cards may lie on a different side. That is, some of the cards (possibly none or all of them) will be black side up and others will be white side up. Manao wants to flip some cards over to obtain an alternating configuration: every pair of successive cards must be of different colors.

You are given a String cardFront consisting of N characters. For each i, character i of cardFront is 'B' if card i lies black side up, and 'W' otherwise. Count and return the minimum number of cards which must be flipped to obtain an alternating configuration.

Definition

Class:
BlackAndWhiteSolitaire
Method:
minimumTurns
Parameters:
String
Returns:
int
Method signature:
int minimumTurns(String cardFront)
(be sure your method is public)

Constraints

  • cardFront will be between 3 and 50 characters long, inclusive.
  • Each character in cardFront will be either 'B' or 'W'.

Examples

  1. "BBBW"

    Returns: 1

    The first three cards lie with their black side up and the fourth card lies with its white side up. Flipping the second card will give us the alternating configuration "BWBW".

  2. "WBWBW"

    Returns: 0

    The cards already form an alternating configuration.

  3. "WWWWWWWWW"

    Returns: 4

    Manao only needs to flip 4 cards to make the alternating configuration "WBWBWBWBW".

  4. "BBWBWWBWBWWBBBWBWBWBBWBBW"

    Returns: 10

  5. "BBW"

    Returns: 1

  6. "BWWW"

    Returns: 1

  7. "WBWWB"

    Returns: 2

  8. "BWBWBW"

    Returns: 0

  9. "WBBWBWB"

    Returns: 2

  10. "WBWWWWBB"

    Returns: 3

  11. "WBWBWBBWB"

    Returns: 3

  12. "BBWWWWWWBW"

    Returns: 4

  13. "WBWBWWBWBBW"

    Returns: 4

  14. "WWBBBWWBBWWW"

    Returns: 5

  15. "WWBWWWWWWBWWW"

    Returns: 6

  16. "BWWWBWBBBWBBBB"

    Returns: 4

  17. "WBBWWWBWBBWWBWB"

    Returns: 5

  18. "WBBBBBWBWBBBWWWB"

    Returns: 4

  19. "WBWBWBBBWWBBBWWWB"

    Returns: 7

  20. "BWBBBBBWBBBBBWBWWB"

    Returns: 6

  21. "WBBBWWWWWWWBWBWWBWW"

    Returns: 7

  22. "WWBWWWWBWWBWWWWBBBBW"

    Returns: 9

  23. "WWWWBBWBWBWWBWWWWBBWB"

    Returns: 10

  24. "WBBWWBWBWWBBBBBBWBBBBW"

    Returns: 9

  25. "BWWBBWWWWBWWWWBWWWBBBWB"

    Returns: 9

  26. "WBWWBWWBBBBWBWWBBBWWWWBB"

    Returns: 12

  27. "WBBWWWBBBBWBBWWWBWBBWWWBW"

    Returns: 12

  28. "WWBBBWBWBBBBWBWBWBWBWBBBBB"

    Returns: 10

  29. "BBWBWBWBBWBWBBWBBBWBWBBWWBB"

    Returns: 10

  30. "BBWWWWWBWBBBBWBWWBBBBBBWBWWB"

    Returns: 14

  31. "WBBWWWBBBBBWWBWBWWWWBWWWBBWBW"

    Returns: 13

  32. "BWWBWBWBBWBWBWWWBWWBBBWBBBWWWB"

    Returns: 14

  33. "WWBBBBBWBWWBWWWWWBBWWBWBWWWBBBW"

    Returns: 13

  34. "WBBBBWWWBWBWBBWWBBWWBWBBBBWBWBWB"

    Returns: 16

  35. "BWBBBBBWBBWBWWBWWWWBWWWBBWBWWBWWB"

    Returns: 15

  36. "WBWBBBBBBWWWWWBWWWBBWWWWWBWBWBBWWW"

    Returns: 15

  37. "WWBWWBWBWBBBBWBBWWBBBWBWBWBBWWBBBWW"

    Returns: 15

  38. "WWWWBBWBWWWWWBWBBBBBBWBWBBWWWWBBWWBB"

    Returns: 17

  39. "WBBWBBBBWBWWWWWBBWBWBWBBBBWWWBBWWWWBB"

    Returns: 18

  40. "BWWBWBBWBWWWWWBWWBWWWWBWWWWBBBWBWBBBBB"

    Returns: 18

  41. "BWBBWWBBWWWBWWWBBWBWWWWWWWBWWWWWBBWWBBB"

    Returns: 17

  42. "BWBBWBBBBBBWBBBBWBBWWWWWBBBBBWBBBWWBBWBW"

    Returns: 16

  43. "WBWWWBBBBBBBBWWBBWBWWWWBWBWWBBWWBBBWWWBBW"

    Returns: 19

  44. "BWBBWWWBBWWBBWBBBWWWWBWBBBBBBWWWWWWBWWBBWB"

    Returns: 20

  45. "WWBBBWWWBWBBBWWWBBBBWBWBWWBWBWWBBWWBBWBWBWB"

    Returns: 16

  46. "BBBWBWBBWBWWWBWBBBBWBBWWBBWBBWWBWBBBWWBBBWBW"

    Returns: 22

  47. "BWBWBWBBBBBWWWWWBBWWWBBWBBWWWWWBWBBBWWWBWWBWW"

    Returns: 21

  48. "WWBBBBWWWWBWBWWBWWWBWBWBWBBWWBBBWWBWWWWBBBWWBW"

    Returns: 21

  49. "BBBWWWBBBWWWBBBWWBWBBWWBBBBWWBWBBBWBWWWWBWBBBWB"

    Returns: 22

  50. "WWWWBWWWWBWWWBBWWBWBWWBWBWWBBWWBWBBWWWBBWWWBBBWB"

    Returns: 21

  51. "BWWWWWBBBWWBBWWBBBBWWWBBBBBBWBWBWBBWBBWBWWBWBWWBW"

    Returns: 24

  52. "WWBBWBBBBBWWBBWWWWBBBBBBBWWWWWWWWBWBBWWWWBBBBWBWBB"

    Returns: 25

  53. "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"

    Returns: 25

  54. "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"

    Returns: 25

  55. "BWWWBWWBWBBWWBWBBBWWBWBWBWWBWBBBBBWBWBBBBWWWWBWBWB"

    Returns: 21

  56. "BBBWBBWBBBBWBBWWWBBBWBWBWWBBWBWBWBWWWWWWWWWWBWBWB"

    Returns: 22

  57. "BBBBWBWWWWWBWBBWWBWBBWBBBWBBBBBWWBBBBBWWWBBWWBWBB"

    Returns: 21

  58. "WBBWBWBWWWWWWBWWBBWBWWWBWBWWWBWWBWWWBWWWWBWWBBBBBB"

    Returns: 23

  59. "BBWWWWWBBBWWBBWWBWBBWBWBBWBWBWWBWWBWBBBWWBBBBWBBW"

    Returns: 23

  60. "BBB"

    Returns: 1

  61. "BWW"

    Returns: 1

  62. "WWBWBW"

    Returns: 1

  63. "BWBWBBBBWBWWWWWBWBWBWBWBWBWBWBWBWBWBBBWWWBWBWW"

    Returns: 11

  64. "BWBWBWWWWWBBBBWBBBWBBWBWBBWWW"

    Returns: 12

  65. "BBWBWB"

    Returns: 1

  66. "BWWBWBWBWBBW"

    Returns: 4

  67. "WBWBWW"

    Returns: 1

  68. "WBW"

    Returns: 0

  69. "BBWBWBWBWBWB"

    Returns: 1

  70. "BBBBW"

    Returns: 2

  71. "BBWWBWBWBWBW"

    Returns: 2

  72. "BWWWW"

    Returns: 2

  73. "BBWBWBWBWBWBWBWBWBB"

    Returns: 2

  74. "BBWB"

    Returns: 1

  75. "BWWBWWBWBWWBBBWBWBWBBWBBW"

    Returns: 11

  76. "BBWBWWBWBWBWBWBWBWBWBWWWWWWBBBBBWBWBWBWBWBWWBBBWB"

    Returns: 22

  77. "BBWBB"

    Returns: 2

  78. "WWB"

    Returns: 1

  79. "WBWBWBB"

    Returns: 1

  80. "WWBWBWBWBWW"

    Returns: 2

  81. "BBWWBW"

    Returns: 2

  82. "WWBW"

    Returns: 1

  83. "BWBWW"

    Returns: 1

  84. "BWB"

    Returns: 0

  85. "BBWWW"

    Returns: 2

  86. "BWWBBB"

    Returns: 3

  87. "BWWBW"

    Returns: 2

  88. "BBBBWBWBWBWBWBWBW"

    Returns: 2

  89. "BBWBWBWBWBB"

    Returns: 2

  90. "BBBBWBWBWBWB"

    Returns: 2

  91. "WWBWBWBWBWBB"

    Returns: 2

  92. "BBWW"

    Returns: 2

  93. "BWWBWBWB"

    Returns: 2


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: