เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงเป็นอาร์กิวเมนต์เดียว หน้าที่ของฟังก์ชันของเราคือนับสตริงย่อยที่ต่อเนื่องกันทั้งหมดในสตริงอินพุตที่มีตัวอักษรต่างกันเพียงตัวเดียว
ฟังก์ชันควรคืนค่าจำนวนสตริงย่อยดังกล่าวทั้งหมด
ตัวอย่างเช่น −
หากสตริงอินพุตเป็น −
const str = 'iiiji';
จากนั้นผลลัพธ์ควรเป็น −
const output = 8;
เพราะสตริงที่ต้องการคือ −
'iii', 'i', 'i', 'i', 'i', 'j', 'ii', 'ii'
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const str = 'iiiji';
const countSpecialStrings = (str = '') => {
let { length } = str;
let res = length;
if(!length){
return length;
};
for (let j = 0, i = 1; i < length; ++ i) {
if (str[i] === str[j]) {
res += i - j;
} else {
j = i;
}
};
return res;
}
console.log(countSpecialStrings(str)); ผลลัพธ์
ต่อไปนี้เป็นเอาต์พุตคอนโซล -
8