একটি স্ট্রিং দেওয়া হয়েছে যা শুধুমাত্র দুটি ধরনের অক্ষর নিয়ে গঠিত:"(" এবং ")"। আমাদের এমন একটি ফাংশন লিখতে হবে যা এইরকম একটি স্ট্রিং নেয় এবং যতবার প্রয়োজন ততবার একটি "(" বা একটি ")" সন্নিবেশ করে বন্ধনীর ভারসাম্য বজায় রাখে৷
তারপরে ফাংশনটি স্ট্রিংয়ে ভারসাম্য বজায় রাখতে ন্যূনতম সংখ্যক সন্নিবেশ ফেরত দেবে। যেমন −
যদি স্ট্রিং −
হয়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