কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে মিলে যাওয়া সাবস্ট্রিং গণনা


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি স্ট্রিং str প্রথম আর্গুমেন্ট এবং একটি স্ট্রিং অ্যারে arr দ্বিতীয় আর্গুমেন্ট হিসেবে নেবে। ফাংশনটি গণনা করবে এবং ফেরত দেবে arr[i] কতগুলো str-এর সাবসিকোয়েন্স।

উদাহরণস্বরূপ, যদি ইনপুট হয় –

ইনপুট

const str = 'klmnop'; 
const arr = ['k', 'll', 'klp', 'klo'];

আউটপুট

const output = 3;

আউটপুট ব্যাখ্যা

কারণ 아직도 স্ট্রিংগুলো হল 'k', 'klp', এবং 'klo'।

উদাহরণ

নিচে কোডটি দেওয়া হল –

const str = 'klmnop'; 
const arr = ['k', 'll', 'klp', 'klo']; 
const countSubstrings = (str = '', arr = []) => { 
  const map = arr.reduce((acc, val, ind) => { 
    const c = val[0]; 
    acc[c] = acc[c] || []; 
    acc[c].push([ind, 0]); 
    return acc; 
  }, {}); 
  let num = 0; 
  for (let i = 0; i < str.length; i++) { 
    if (map[str[i]] !== undefined) { 
      const list = map[str[i]]; 
      map[str[i]] = undefined; 
      list.forEach(([wordIndex, charIndex]) => { 
        if (charIndex === arr[wordIndex].length - 1) { 
          num += 1; 
        } else { 
          const nextChar = arr[wordIndex][charIndex + 1]; 
          map[nextChar] = map[nextChar] || []; 
          map[nextChar].push([wordIndex, charIndex + 1]); 
        } 
      }); 
    } 
  } 
  return num; 
}; 
console.log(countSubstrings(str, arr));

আউটপুট

3

  1. জাভাস্ক্রিপ্ট const কীওয়ার্ড

  2. জাভাস্ক্রিপ্টে Const এবং Let এর পার্থক্য

  3. জাভাস্ক্রিপ্টে ক্যামেলকেস স্ট্রিং আনক্যামেলাইজ করা

  4. জাভাস্ক্রিপ্টে রেঞ্জ সমষ্টি গণনা করা নির্দিষ্ট সীমার মধ্যে