Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में न्यूनतम सिक्कों से राशि प्राप्त करना


समस्या

हमें एक JavaScript फ़ंक्शन लिखना है जो arr को पहले आर्गुमेंट के रूप में लेता है। यह सरणी मूल रूप से विभिन्न प्रकार के सिक्का मूल्यवर्ग को निर्दिष्ट करती है जो हमारे पास हैं।

फ़ंक्शन का दूसरा आर्गुमेंट एक संख्या amount है, जो उस राशि को निर्दिष्ट करती है जिसे हम जोड़ना चाहते हैं। हमारे फ़ंक्शन को बस उस राशि तक पहुंचने के लिए आवश्यक न्यूनतम सिक्कों की संख्या वापस करनी चाहिए।

यदि हम किसी भी तरह से राशि तक नहीं पहुंच सकते, तो हमें -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. जावास्क्रिप्ट call() मेथड आर्गुमेंट्स के साथ जावास्क्रिप्ट call() मेथड आर्गुमेंट्स के साथ

    परिचय जावास्क्रिप्ट call() मेथड हमें एक ही मेथड को अलग-अलग ऑब्जेक्ट्स के साथ उपयोग करने की अनुमति देता है। पैरामीटर्स को अलग-अलग पास किया जाता है (कॉमा-सेपरेटेड)। यह this को स्पष्ट रूप से सेट करता है। apply() समान है लेकिन आर्गुमेंट्स को ऐरे के रूप में लेता है। bind() एक नया फ़ंक्शन लौटाता है जिसमे

  1. उदाहरण के साथ जावास्क्रिप्ट में इनहेरिटेंस उदाहरण के साथ जावास्क्रिप्ट में इनहेरिटेंस

    जावास्क्रिप्ट एक ऑब्जेक्ट-आधारित भाषा है जो प्रोटोटाइप पर आधारित है। इनहेरिटेंस को जावास्क्रिप्ट में प्रोटोटाइप ऑब्जेक्ट का उपयोग करके लागू किया जाता है। जावास्क्रिप्ट में इनहेरिटेंस लागू करने के लिए कोड निम्नलिखित है: उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=

  1. JavaScript से चेकबॉक्स चेक करना JavaScript से चेकबॉक्स चेक करना

    मान लीजिए निम्नलिखित हमारे इनपुट टाइप चेकबॉक्स हैं: John David हम किसी भी चेकबॉक्स को चेक करना चाहते हैं। चेकबॉक्स चेक करने के लिए checked प्रॉपर्टी का उपयोग करें। उदाहरण निम्नलिखित कोड देखें: Document John David document.querySelector(#checkedValue2).checked = true