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

JavaScript में सरणी का योग विभाज्य बनाने के लिए सबसे छोटी उप-सरणी हटाना


हमें एक JavaScript फ़ंक्शन लिखना है जो पहले तर्क के रूप में धनात्मक पूर्णांकों की एक सरणी और दूसरे तर्क के रूप में एक धनात्मक पूर्णांक लेता है।

फ़ंक्शन को उस सबसे छोटी उप-सरणी की लंबाई ढूंढकर वापस करनी चाहिए जिसे मूल सरणी से हटाने पर उसका योग दूसरे तर्क द्वारा निर्दिष्ट संख्या से विभाज्य हो जाए।

उदाहरण के लिए -

यदि इनपुट है -

const arr = [3, 8, 2, 6];
const num = 9;

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

const output = 2

क्योंकि हटाई जाने वाली उप-सरणी [8, 2] है।

उदाहरण

निम्नलिखित कोड देखें:

const arr = [3, 8, 2, 6];
const num = 9;

const minimumDeletion = (arr = [], num) => {
  const diff = arr.reduce((a, b) => a + b) % num;
  let res = diff == 0 ? 0 : arr.length;
  for (let i = 0, sum = 0, map = {0: -1}; i < arr.length; i++) {
    sum += arr[i];
    const target = (sum % num - diff + num) % num;
    if (map[target] != undefined) {
      res = Math.min(res, i - map[target]);
    };
    map[sum % num] = i;
  };
  return res == arr.length ? -1 : res;
};

console.log(minimumDeletion(arr, num));

आउटपुट

कंसोल आउटपुट निम्नलिखित है -

2

  1. - JavaScript में सरणी में तत्व जोड़कर विविध योग बनाना

    समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो संख्याओं की एक सरणी arr को पहले आर्गुमेंट के रूप में और एक संख्या num को दूसरे आर्गुमेंट के रूप में लेता है। हमें इसमें तत्व जोड़कर अपनी सरणी को ऐसा बनाना चाहिए कि [0, num] के बीच (दोनों सहित) कोई भी योग इसमें से विशिष्ट संख्याओं को जोड़कर प्राप्त किया

  1. - JavaScript में ऐरे में मौजूद सभी पॉजिटिव नंबर्स का योग

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो नंबर्स (पॉजिटिव और नेगेटिव) का एक ऐरे लेता है। हमारा फ़ंक्शन ऐरे में मौजूद सभी पॉजिटिव नंबर्स का योग गणना करके लौटाएगा।उदाहरणनिम्नलिखित कोड है − { if(isPositive(val)){ acc += val; }; return acc; }, 0); return res; }; console.log(sumPositives(arr));आ

  1. - JavaScript में सर्कुलर सरणी में अधिकतम उपसरणी योग

    समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो पूर्णांकों की एक सरणी, arr, को पहला और एकमात्र तर्क के रूप में लेता है। हम इस सरणी arr को एक सर्कुलर सरणी मान सकते हैं, जिसका अर्थ है कि सरणी का अंतिम तत्व पहले तत्व के बाद आएगा। हमारे फ़ंक्शन को arr की एक गैर-खाली उपसरणी का अधिकतम संभव योग ढूंढकर वापस क