কম্পিউটার

জাভাস্ক্রিপ্টে অল্প কয়েন সহ রাশির সমষ্টি


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা প্রথম আর্গুমেন্ট হিসাবে arr, arr নেয়। এই অ্যারে মূলত আমাদের কাছে বিভিন্ন ধরনের মুদ্রার মান উল্লেখ করে।

ফাংশনের দ্বিতীয় আর্গুমেন্ট হল একটি সংখ্যা, পরিমাণ, যা আমরা যে পরিমাণ যোগ করতে চাই তা নির্দিষ্ট করে। আমাদের ফাংশনটি কেবল সেই পরিমাণ পর্যন্ত যোগ করার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক কয়েন ফেরত দেবে।

যদি আমরা কোনভাবেই পরিমাণে পৌঁছাতে না পারি, তাহলে আমাদের -1 ফেরত দেওয়া উচিত।

উদাহরণস্বরূপ, যদি ফাংশনে ইনপুট হয় −

const arr = [1, 2, 5];
const amount = 17;

তারপর আউটপুট −

হওয়া উচিত
const output = 4;

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

কারণ 5 এর 3টি কয়েন এবং 2 এর 1 কয়েন ব্যবহার করে পরিমাণটি অর্জন করা যেতে পারে।

উদাহরণ

এর জন্য কোড হবে −

const arr = [1, 2, 5];
const amount = 17;
const minCoins = (arr = [], amount = 1) => {
   const changes = [];
   changes[0] = 0;
   while(changes.length <= amount){
      let change = Math.pow(2, 31) - 1;
      for (let i = 0; i < arr.length; i++) {
         if (changes.length - arr[i] < 0){
            continue;
         };
         change = Math.min(change, 1 + changes[changes.length - arr[i]]);
      };
      changes.push(change);
   };
   return changes[amount] == Math.pow(2, 31) - 1 ? -1 : changes[amount];
};
console.log(minCoins(arr, amount));

আউটপুট

এবং কনসোলে আউটপুট হবে −

4

  1. জাভাস্ক্রিপ্ট unescape() উদাহরণ সহ

  2. আর্গুমেন্ট সহ জাভাস্ক্রিপ্ট কল() পদ্ধতি।

  3. উদাহরণ সহ জাভাস্ক্রিপ্টে উত্তরাধিকার

  4. জাভাস্ক্রিপ্ট সহ একটি চেকবক্স চেক করা হচ্ছে