আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি স্ট্রিং নেয় এবং 0 থেকে এর অক্ষর ম্যাপ করা শুরু করে।
এবং প্রতিবার, ফাংশনটি একটি অনন্য (নন-ডুপ্লিকেট) অক্ষরের মুখোমুখি হয় এটি ম্যাপিং সংখ্যা 1 দ্বারা বৃদ্ধি করা উচিত অন্যথায় এটি সদৃশ অক্ষরের জন্য একই সংখ্যা ম্যাপ করা উচিত।
উদাহরণস্বরূপ:যদি স্ট্রিং হয় −
const str = 'heeeyyyy';
তারপর আউটপুট −
হওয়া উচিতconst output = [0, 1, 1, 1, 2, 2, 2, 2];
অতএব, আসুন এই ফাংশনের জন্য কোড লিখি -
উদাহরণ
এর জন্য কোড হবে −
const str = 'heeeyyyy';
const mapString = str => {
const res = [];
let curr = '', count = -1;
for(let i = 0; i < str.length; i++){
if(str[i] === curr){
res.push(count);
}else{
count++;
res.push(count);
curr = str[i];
};
};
return res;
};
console.log(mapString(str)); আউটপুট
কনসোলে আউটপুট হবে −
[ 0, 1, 1, 1, 2, 2, 2, 2 ]