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

জাভাস্ক্রিপ্টে ব্র্যাকেটের স্কোর নির্ণয়


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি बैलেন্সড স্কোয়ার ব্র্যাকেট স্ট্রিং str প্রথম ও একমাত্র আর্গুমেন্ট হিসেবে নেবে।

ফাংশনটি নিচের নিয়ম অনুযায়ী স্ট্রিংয়ের স্কোর গণনা করে ফেরত দেবে –

  • [] এর স্কোর ১
  • AB এর স্কোর A + B, যেখানে A এবং B হল ব্যালেন্সড ব্র্যাকেট স্ট্রিং।
  • [A] এর স্কোর 2 * A, যেখানে A হল একটি ব্যালেন্সড ব্র্যাকেট স্ট্রিং।

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

ইনপুট

const str = '[][]';

আউটপুট

const output = 2;

উদাহরণ

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

const findScore = (str = '') => { 
  const arr = []; 
  for (const char of str) { 
    arr.push(char); 
    while (arr[arr.length - 1] === ']') { 
      arr.pop(); 
      if (arr[arr.length - 1] === '[') { 
        arr.pop(); 
        arr.push(1); 
      } else { 
        let num = arr.pop(); 
        while (arr[arr.length - 1] >= 1) { 
          num += arr.pop(); 
        } 
        arr.pop(); 
        arr.push(2 * num); 
      } 
    } 
  } 
  return arr.reduce((acc, a) => acc + a, 0); 
}; 
console.log(findScore(str));

আউটপুট

2

  1. জাভাস্ক্রিপ্টে অ্যারেতে ফিবোনাচি সিকোয়েন্স খুঁজে বের করা

  2. জাভাস্ক্রিপ্টে কেন্দ্রকেন্দ্রিক শীর্ষবিন্দুযুক্ত অ্যারেতে শীর্ষ খুঁজে বের করা

  3. জাভাস্ক্রিপ্টে অ্যারেতে মিডিয়ান সূচক খুঁজে বের করা

  4. জাভাস্ক্রিপ্টে সবচেয়ে দীর্ঘ কনsekutিভ পেয়ার চেইন খুঁজে বের করা