আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা শুধুমাত্র যুক্তি হিসাবে অক্ষরের একটি স্ট্রিং নেয়৷
ফাংশনটিকে সেই দীর্ঘতম স্ট্রিংটি খুঁজে পাওয়া উচিত যা দুটি অভিন্ন অক্ষরের মধ্যে স্যান্ডউইচ করা হয় এবং এর দৈর্ঘ্য ফিরিয়ে দেয়৷
যেমন −
যদি ইনপুট স্ট্রিং −
হয়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