দুই ধরনের ক্যারেক্টার নিয়ে একটি স্ট্রিং দেওয়া আছে: "(" এবং ")"। আমাদের একটি ফাংশন লিখতে হবে যা এমন একটি স্ট্রিং নেয় এবং "(" বা ")" যোগ করে যেন পারেনথেসিসগুলো ভারসাম্য পায়। ফাংশনটি স্ট্রিং-এ করা ন্যূনতম যোগফলের সংখ্যা রিটার্ন করবে।
উদাহরণস্বরূপ: যদি স্ট্রিং হয়:
const str = '()))';
তবে আউটপুট হবে 2, কারণ শুরুতে '((' যোগ করলে স্ট্রিংটি ভারসাম্য পাবে।
উদাহরণ
কোড নিচে দেওয়া হলো:
const str = '()))';
const balanceParanthesis = str => {
let paren = [];
for (let i = 0; i < str.length; i++) {
if (str[i] === "(") {
paren.push(str[i]);
} else if (str[i] === ")") {
if (paren[paren.length - 1] === "("){
paren.pop();
}else {
paren.push("#");
};
};
}
return paren.length;
}
console.log(balanceParanthesis(str));
আউটপুট
কনসোলে আউটপুট:
2