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

JavaScript में सीमा योग के साथ जोड़े गिनना


रेंज योग

रेंज योग rangeSum(i, j) को एक सरणी में इंडेक्स i और j (i ≤ j) के बीच के तत्वों के योग के रूप में परिभाषित किया गया है, जिसमें दोनों शामिल हैं।

समस्या

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

हमारा फ़ंक्शन उन रेंज योगों की संख्या वापस करने वाला है जो रेंज [upper, lower] के बीच आते हैं, (दोनों समावेशी)।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -

const arr = [1, 4, 3]; 
const upper = 5; 
const lower = 2;

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

const output = 3;

उदाहरण

इसके लिए कोड होगा -

const arr = [1, 4, 3]; 
const upper = 5; 
const lower = 2; 
const countRangeSum = (arr = [], lower, upper) => { 
  const sums = [0]; 
  let res = 0; 
  let last = 0; 
  let firstge = value => { 
    let l = 0, r = sums.length, m; 
    do { 
      m = Math.floor((r + l) / 2); 
      sums[m] < value ? l = m : r = m; 
    } while (r >= l + 2); 
    while (r > 0 && sums[r - 1] >= value ) { 
      r -= 1; 
    } 
    return r; 
  }; 
  arr.forEach(num => { 
    last += num; 
    res += firstge(last - lower + 1) - firstge(last - upper); 
    sums.splice(firstge(last), 0, last); 
  }); 
  return res; 
}; 
console.log(countRangeSum(arr, lower, upper));

आउटपुट

कंसोल में आउटपुट होगा -

3

  1. - JavaScript में वांछित योग वाली बाइनरी उपसरणियाँ

    समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो एक बाइनरी सरणी, arr, को पहला तर्क और एक संख्या, target, को दूसरा तर्क के रूप में लेता है। हमारा फ़ंक्शन सरणी arr में मौजूद उन उपसरणियों की संख्या गिनने वाला है जिनके तत्वों का योग target के बराबर है। हमें अंत में यह गिनती वापस करनी चाहिए। उदाहरण के लिए,

  1. - JavaScript में मिलान करने वाले सबस्ट्रिंग की गिनती

    समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो एक स्ट्रिंग, str, को पहला तर्क और स्ट्रिंग्स की एक सरणी, arr, को दूसरा तर्क के रूप में लेता है। हमारे फ़ंक्शन को arr[i] की संख्या गिनकर वापस करनी चाहिए जो स्ट्रिंग str का उपअनुक्रम है। उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है इनपुट const str = klmnop; cons

  1. - JavaScript में मैप सम जोड़े

    समस्याहमें insert और sum विधियों के साथ एक MapSum क्लास को लागू करना है। insert विधि के लिए, हमें (स्ट्रिंग, पूर्णांक) का एक जोड़ा दिया जाएगा। स्ट्रिंग कुंजी को दर्शाता है और पूर्णांक मान को दर्शाता है। यदि कुंजी पहले से मौजूद थी, तो मूल कुंजी-मान जोड़ी को नए से ओवरराइड किया जाएगा।sum विधि के लिए, ह