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

জাভাস্ক্রিপ্টে অ্যারে ইউনিক (Unique) করার ন্যূনতম মুভ


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি সংখ্যা অ্যারে (arr) নেবে। একটি মুভ মানে যেকোনো arr[i] বেছে নিয়ে সেটি ১ বাড়ানো। ফাংশনটি ন্যূনতম কতগুলো মুভ দিয়ে অ্যারে-এর সব মান ইউনিক করা যায় তা রিটার্ন করবে।

উদাহরণস্বরূপ, ইনপুট যদি হয় –

const arr = [12, 15, 7, 15];

তবে আউটপুট হবে –

const output = 1;

আউটপুট ব্যাখ্যা

কারণ যেকোনো একটি ১৫ কে ১৬ করলে অ্যারে-এ সব এলিমেন্ট ইউনিক হয়ে যাবে।

উদাহরণ

কোডটি নিচের মতো –

const arr = [12, 15, 7, 15]; const makeUnique = (arr = []) => { arr.sort((a, b) => a - b); let count = 0; for (let i = 1; i < arr.length; i++) { if (arr[i] <= arr[i - 1]) { const temp = arr[i]; arr[i] = arr[i - 1] + 1; count += arr[i] - temp; }; }; return count; }; console.log(makeUnique(arr));

আউটপুট

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

1
  1. জাভাস্ক্রিপ্টে অ্যারে খালি করার উপায়

  2. জাভাস্ক্রিপ্ট Array.prototype.map() ফাংশন

  3. জাভাস্ক্রিপ্ট বেসিক অ্যারে মেথড: push, pop, shift, unshift, splice

  4. জাভাস্ক্রিপ্ট অ্যারেতে সব ইউনিক ভ্যালু বের করা