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

JavaScript में n तक योग देने वाले पूर्ण वर्गों की न्यूनतम संख्या

हमें एक JavaScript फ़ंक्शन लिखना है जो एकमात्र आर्गुमेंट के रूप में एक धनात्मक संख्या, मान लीजिए num, लेता है।

फ़ंक्शन को ऐसे पूर्ण वर्ग संख्याओं का संयोजन ढूंढना चाहिए जिन्हें जोड़ने पर इनपुट के रूप में दी गई संख्या मिले। हमें यह सुनिश्चित करना है कि हम यथासंभव कम से कम पूर्ण वर्गों का उपयोग करें।

उदाहरण

यदि इनपुट संख्या है:

const num = 123;

तो आउटपुट होना चाहिए:

const output = 3;

क्योंकि 123 = 121 + 1 + 1

यह एक क्लासिक डायनामिक प्रोग्रामिंग समस्या है जहां हम किसी विशेष संख्या के परिणाम तक उसके पूर्ववर्ती संख्याओं के परिणामों के आधार पर पहुंच सकते हैं।

कोड उदाहरण

const num = 123;
const sumSquares = (num) => {
  let arr = new Array(num + 1).fill(0);
  arr[1] = 1;
  for(let i = 1; i * i <= num; i++) {
    for(let j = i * i; j < arr.length; j++) {
      if(arr[j] == 0) {
        arr[j] = arr[j - (i * i)] + 1;
      } else {
        arr[j] = Math.min(arr[j - (i * i)] + 1, arr[j]);
      }
    }
  };
  return arr[num];
};
console.log(sumSquares(num));

आउटपुट

3
  1. - JavaScript में Number.NEGATIVE_INFINITY प्रॉपर्टी

    Number ऑब्जेक्ट की Number.NEGATIVE_INFINITY प्रॉपर्टी नेगेटिव इन्फिनिटी मान को दर्शाती है। सिंटैक्स इसका सिंटैक्स निम्नानुसार है: Number.NEGATIVE_INFINITY उदाहरण <html> <head>    <title>JavaScript Example</title> </head> <body>    <script

  1. JavaScript Number() फंक्शन JavaScript Number() फंक्शन

    JavaScript Number() फंक्शन ऑब्जेक्ट वैल्यू को तर्क के रूप में पास करके उसके संबंधित न्यूमेरिक वैल्यू में बदल देता है।उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width,

  1. JavaScript में संख्या पैटर्न JavaScript में संख्या पैटर्न

    हमें एक JavaScript और HTML प्रोग्राम लिखना है जो उपयोगकर्ता को एक टेक्स्ट इनपुट और बटन प्रदान करता है। जब उपयोगकर्ता इनपुट में कोई मान दर्ज करता है, मान लीजिए 5, और बटन पर क्लिक करता है, तो हमें स्क्रीन पर निम्नलिखित पैटर्न प्रिंट करना चाहिए। (n = 5 के लिए) 01 01 02 01 02 03 01 02 03 04 01 02 03 04