मान लें कि निम्नलिखित समस्या है:
हमारे पास 1 से शुरू होने वाली और किसी भी मनमानी संख्या तक संख्याओं का एक क्रम है, चलो इसे संख्या कहते हैं। हमें अनुक्रम से दो ऐसी संख्याएँ चुननी हैं (चलिए उन्हें m और n कहते हैं), जैसे:
sum(1 to num) - (m + n) = m * n
और अंत में, हमें ऐसे सभी नंबरों के समूहों की एक सरणी वापस करनी चाहिए।
उदाहरण के लिए -
यदि इनपुट है -
const num = 10;
तब आउटपुट होना चाहिए -
const output = [ [7, 6] ];
क्योंकि योग(1 से 10) =55
और,
55 - (6 + 7) = 6 * 7 = 42
उदाहरण
इसके लिए कोड होगा -
const num = 10; const pickNumbers = num => { const sum = (num) * (num + 1) * (.5); const results = []; for (let n = 1; n <= num; n++) { let first = sum - n; let second = n + 1; if (first % second === 0) { let m = first / second; if (m < num && m !== n && results.every(group => group[0] + group[1] !== m + n)){ results.push([m, n]); } } } return results; } console.log(pickNumbers(10));
आउटपुट
और कंसोल में आउटपुट होगा -
[ [7, 6] ]