Problem · String

Minimal Operations

Learn this problem
EasySalesforceFULLTIMEOA
See Salesforce hiring insights

Problem statement

For each word in a list of words, if any two adjacent characters are equal, change one of them. Determine the minimum number of substitutions so the final string contains no adjacent equal characters.

Function

minimalOperations(words: String[]) → int[]

Complete the function minimalOperations in the editor below.

minimalOperations has the following parameter(s):

  1. string words[n]: an array of strings

Returns

int[n]: each element i is the minimum substitutions for words[i]

: 𓏲🐋 ๋࣭  ࣪Credit to BananaInc˖✩࿐࿔ 🌊

Examples

Example 1

words = ["add", "boook", "break"]return = [1, 1, 0]
1. 'add': change one d (1 change) 2. 'boook': change the middle o (1 change) 3. 'break': no changes are necessary (0 changes) The return array is [1, 1, 0].

Example 2

words = ["ab", "aab", "abb", "abab", "abaaaba"]return = [0, 1, 1, 0, 1]
Unknown for now. Will add once find the reference :)

Constraints

  • 1 ≤ n ≤ 100
  • 2 ≤ length of words[i] ≤ 105
  • Each character of words[i] is in the range ascii[a-z]
  • More Salesforce problems

    drafts saved locally
    public int[] minimalOperations(String[] words) {
      // write your code here
    }
    
    words["add", "boook", "break"]
    expected[1, 1, 0]
    checking account