আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা শুধুমাত্র যুক্তি হিসাবে অক্ষরের একটি স্ট্রিং নেয়৷
ফাংশনটিকে সেই দীর্ঘতম স্ট্রিংটি খুঁজে পাওয়া উচিত যা দুটি অভিন্ন অক্ষরের মধ্যে স্যান্ডউইচ করা হয় এবং এর দৈর্ঘ্য ফিরিয়ে দেয়৷
যেমন −
যদি ইনপুট স্ট্রিং −
হয়const str = 'sadtrsewak';
তারপর আউটপুট −
হওয়া উচিতconst output = 6;
কারণ দুটি 'a'-এর মধ্যে আমাদের দৈর্ঘ্য 6 এর দীর্ঘতম কাঙ্ক্ষিত সাবস্ট্রিং রয়েছে।
উদাহরণ
নিম্নলিখিত কোড -
const str = 'sadtrsewak';
const longestSubstringBetween = (str = '') => {
const map = {};
let res = -1;
for(let i = 0; i < str.length; i++){
const el = str[i];
if(map.hasOwnProperty(str[i])){
res = Math.max(res, i - map[el] - 1);
}else{
map[el] = i;
};
};
return res;
}
console.log(longestSubstringBetween(str)); আউটপুট
নিম্নোক্ত কনসোল আউটপুট -
6