Back to all solutions
#3330 - Find the Original Typed String I
Problem 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.
Solution
/**
* @param {string} word
* @return {number}
*/
var possibleStringCount = function(word) {
let result = 1;
let consecutiveCount = 1;
for (let i = 1; i < word.length; i++) {
if (word[i] === word[i - 1]) {
consecutiveCount++;
} else {
if (consecutiveCount > 1) {
result += consecutiveCount - 1;
}
consecutiveCount = 1;
}
}
if (consecutiveCount > 1) {
result += consecutiveCount - 1;
}
return result;
};