সমস্যা
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি সুষম বর্গাকার বন্ধনী স্ট্রিং, str, প্রথম এবং একমাত্র যুক্তি হিসাবে নেয়৷
আমাদের ফাংশন গণনা করা উচিত এবং নিম্নলিখিত নিয়মের উপর ভিত্তি করে স্ট্রিংয়ের স্কোর ফেরত দেওয়া উচিত −
-
[] স্কোর আছে 1
-
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