কম্পিউটার

জাভাস্ক্রিপ্টে অভিব্যক্তিপূর্ণ শব্দ সমস্যা কেস


কখনও কখনও লোকেরা অতিরিক্ত অনুভূতির প্রতিনিধিত্ব করতে অক্ষর পুনরাবৃত্তি করে, যেমন "হ্যালো" −> "হিইল্লু", "হাই" −> "হিইআই"। "heeellooo" এর মতো এই স্ট্রিংগুলিতে আমাদের কাছে সংলগ্ন অক্ষরগুলির গ্রুপ রয়েছে যেগুলি সব একই:"h", "eee", "ll", "ooo"৷

কিছু প্রদত্ত স্ট্রিং S-এর জন্য, একটি ক্যোয়ারী শব্দ প্রসারিত হয় যদি নিম্নলিখিত এক্সটেনশন অপারেশনের যেকোন সংখ্যক অ্যাপ্লিকেশন দ্বারা এটিকে S-এর সমান করা যায়:c অক্ষর সমন্বিত একটি গ্রুপ বেছে নিন এবং গ্রুপে কিছু সংখ্যক অক্ষর c যোগ করুন যাতে গ্রুপের আকার 3 বা তার বেশি হয়।

উদাহরণস্বরূপ, "হ্যালো" দিয়ে শুরু করে, "হ্যালো" পেতে আমরা "ও" গ্রুপে একটি এক্সটেনশন করতে পারি, কিন্তু "ওও" গ্রুপের আকার 3-এর কম হওয়ায় আমরা "হ্যালো" পেতে পারি না। এছাড়াও, আমরা করতে পারি "helllllooo" পেতে "ll" −> "lllll" এর মতো আরেকটি এক্সটেনশন। যদি S ="helllllooo", তাহলে এই দুটি এক্সটেনশন অপারেশনের কারণে "hello" কোয়েরি শব্দটি প্রসারিত হবে:query ="hello" −> "hellooo" −> "helllllooo" =S.

ক্যোয়ারী শব্দের একটি তালিকা দেওয়া হলে, আমাদের প্রসারিত শব্দের সংখ্যা ফেরত দিতে হবে।

যেমন −

যদি ইনপুট স্ট্রিং −

হয়
const str = 'heeellooo';

এবং শব্দের তালিকা হল −

const words = ["hello", "hi", "helo"];

এবং আউটপুট −

হওয়া উচিত
const output = 1

উদাহরণ

এর জন্য কোড হবে −

const str = 'heeellooo';
const words = ["hello", "hi", "helo"];
const extraWords = (str, words) => {
   let count = 0;
   for (let w of words) {
      let i = 0;
      let j = 0;
      for (; i < str.length && j < w.length && w[j] === str[i];) {
         let lenS = 1;
         let lenW = 1;
         for (; i+lenS < str.length && str[i+lenS] === str[i]; lenS++);
         for (; j+lenW < w.length && w[j+lenW] === w[j]; lenW++);
         if (lenS < lenW || lenS > lenW && lenS < 3) break;
         i += lenS;
         j += lenW;
      }
      if (i === str.length && j === w.length) {
         count++;
      }
   }
   return count;
}
console.log(extraWords(str, words));

আউটপুট

এবং কনসোলে আউটপুট হবে −

1

  1. 2 জাভাস্ক্রিপ্টে কীবোর্ড সমস্যা

  2. জাভাস্ক্রিপ্টে মিটিং রুম 2 সমস্যা

  3. জাভাস্ক্রিপ্টে কলা বিতরণের সমস্যা

  4. জাভাস্ক্রিপ্টের একটি স্ট্রিং-এ উপস্থিত শব্দগুলিকে বিপরীত করা