মনে করুন, আমাদের একটি বাইনারি স্ট্রিং আছে —
const str = '001001';
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এমন একটি স্ট্রিং প্রথম ও একমাত্র আর্গুমেন্ট হিসেবে গ্রহণ করবে।
ফাংশনটি ইনপুটে ন্যূনতম কতগুলো ডিলিশন (deletion) করলে কোনো দুটি আডজেসেন্ট (সন্নিহিত) সংখ্যা একই থাকবে না, সেটি গণনা করে রিটার্ন করবে।
উদাহরণস্বরূপ, উপরের স্ট্রিংয়ের জন্য আউটপুট হবে —
const output = 2;
কারণ ইনডেক্স ০ এবং ৩-এ থাকা '0' ডিলিট করলে নতুন স্ট্রিং হবে '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