สมมติว่าเรามีสตริงไบนารีแบบนี้ -
const str = '001001';
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงเช่นอาร์กิวเมนต์แรกและอาร์กิวเมนต์เดียว
จากนั้นฟังก์ชันควรคำนวณและส่งคืนจำนวนการลบขั้นต่ำที่จำเป็นในการป้อนข้อมูล เพื่อไม่ให้ตัวเลขที่อยู่ติดกันสองตัวเหมือนกัน
ตัวอย่างเช่น สำหรับสตริงข้างต้น ผลลัพธ์ควรเป็น −
const output = 2;
เพราะถ้าเราลบ '0' ที่ดัชนี 0 และ 3 สตริงใหม่จะเป็น '0101' ซึ่งเป็นสตริงที่ยาวที่สุดที่ต้องการ
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const str = '001001';
const minimumDeletions = (str = '') => {
let count = 0;
const { length } = str;
for(let i = 0; i < length; i++){
if (str[i] === str[i + 1]){
count++;
};
}
return count;
};
console.log(minimumDeletions(str)); ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
2