1
var minNumberOfFrogs = function (croakOfFrogs) {2
const croakArr = new Array(5).fill(0); //Array to store occurence of each char3
let overlap = 0; //Store the number of overlaps4
for (let i = 0; i < croakOfFrogs.length; i++) {5
switch (croakOfFrogs[i]) {8
//Check if new start, is overlapping with others9
if (croakArr[0] - croakArr[4] - overlap > 1) {14
//Condition to check if r comes before c15
if (croakArr[0] <= croakArr[1]) return -1;19
//Condition to check if o comes before r20
if (croakArr[1] <= croakArr[2]) return -1;24
//Condition to check if a comes before o25
if (croakArr[2] <= croakArr[3]) return -1;29
//Condition to check if k comes before a30
if (croakArr[3] <= croakArr[4]) return -1;35
//Check if all items of array have same count else return -136
//If all items have same count return overlap + 137
return Math.max(...croakArr) === Math.min(...croakArr) ? overlap + 1 : -1;