สมมติว่าเรามีสตริงไบนารีแบบนี้ -
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