কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে স্ট্রিং রিঅ্যারেঞ্জ করা যাতে একই ক্যারেক্টার n দূরত্বে থাকে


আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা পুনরাবৃত্ত ক্যারেক্টার সহ একটি স্ট্রিং নেবে এবং একটি নতুন স্ট্রিং ফেরত দেবে যেখানে সব একই ক্যারেক্টার একে অপরের থেকে ঠিক n ক্যারেক্টার দূরত্বে থাকে। এবং সংখ্যাটি অ্যারের দৈর্ঘ্যের চেয়ে ছোট হওয়া উচিত।

উদাহরণস্বরূপ:

যদি ইনপুট স্ট্রিং হয়: "accessories" এবং সংখ্যা n হল 3 তবে, রিটার্ন ভ্যালু হওয়া উচিত: "secrsecisao"

নোট - প্রয়োজনীয় আউটপুট পেতে অন্য কোনো পারমুটেশনও থাকতে পারে, ক্রম গুরুত্বপূর্ণ নয়, আমাদের লজিক মেনে চলে যতক্ষণ না আমরা শর্ত পূরণ করি আউটপুট সঠিক।

এই ফাংশনের কোড লিখি:

উদাহরণ

const str = 'accessories';
const equalDistance = (str, num) => {
  const map = str.split("").reduce((acc, val) => {
    const count = acc.get(val);
    if(typeof count === 'number'){
      acc.set(val, count+1);
    }else{
      acc.set(val, 1);
    };
    return acc;
  }, new Map());
  const arr = Array.from(map).sort((a, b) => b[1] - a[1]);
  let newString = '';
  for(let i = 0, count = 0; i < str.length;){
    if(!arr[count][1]){
      arr.splice(count, 1);
      continue;
    };
    newString += arr[count][0];
    arr[count][1]--;
    i++;
    count = i % num;
  };
  return newString;
};
console.log(equalDistance(str, 4));
console.log(equalDistance('abb', 2));
console.log(equalDistance('aacbbc', 3));

আউটপুট

কনসোলে আউটপুট হবে:

sceasceosri bab acbacb

  1. জাভাস্ক্রিপ্টে একই স্ট্রিং অক্ষরগুলোকে নির্দিষ্ট দূরত্বে রাখা

  2. জাভাস্ক্রিপ্টে স্ট্রিংয়ের ক্যারেক্টারগুলো রিগ্রুপ করা

  3. C++-এ স্ট্রিং পুনর্বিন্যাস করা যাতে একই ক্যারেক্টারগুলো কমপক্ষে k দূরত্বে থাকে

  4. পাইথন প্রোগ্রাম: স্ট্রিং রি-অ্যারেঞ্জ করা যাতে সব সেম ক্যারেক্টার d দূরত্বে থাকে