Skip to content

3330. Find the Original Typed String I

Description

Alice is attempting to type a specific string on her computer. However, she tends to be clumsy and may press a key for too long, resulting in a character being typed multiple times.

Although Alice tried to focus on her typing, she is aware that she may still have done this at most once.

You are given a string word, which represents the final output displayed on Alice's screen.

Return the total number of possible original strings that Alice might have intended to type.

 

Example 1:

Input: word = "abbcccc"

Output: 5

Explanation:

The possible strings are: "abbcccc", "abbccc", "abbcc", "abbc", and "abcccc".

Example 2:

Input: word = "abcd"

Output: 1

Explanation:

The only possible string is "abcd".

Example 3:

Input: word = "aaaa"

Output: 4

 

Constraints:

  • 1 <= word.length <= 100
  • word consists only of lowercase English letters.

 

Solutions

Solution: Brute Force

  • Time complexity: O(n)
  • Space complexity: O(1)

 

JavaScript

js
/**
 * @param {string} word
 * @return {number}
 */
const possibleStringCount = function (word) {
  const n = word.length;
  let result = 1;

  for (let index = 1; index < n; index++) {
    if (word[index] === word[index - 1]) {
      result += 1;
    }
  }

  return result;
};

Released under the MIT license