समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो संख्याओं की एक सरणी लेता है, एआर, पहले और एकमात्र तर्क के रूप में।
एक चाल में किसी भी गिरफ्तारी [i] को चुनना और इसे 1 से बढ़ाना शामिल है। हमारा कार्य सरणी में प्रत्येक मान को अद्वितीय बनाने के लिए कम से कम चालों को वापस करना है।
उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -
const arr = [12, 15, 7, 15];
तब आउटपुट होना चाहिए -
const output = 1;
आउटपुट स्पष्टीकरण
क्योंकि अगर हम किसी 15 से 16 तक की वृद्धि करते हैं, तो सरणी में सभी अद्वितीय तत्व शामिल होंगे।
उदाहरण
इसके लिए कोड होगा -
const arr = [12, 15, 7, 15]; const makeUnique = (arr = []) => { arr.sort((a, b) => a - b); let count = 0; for (let i = 1; i < arr.length; i++) { if (arr[i] <= arr[i - 1]) { const temp = arr[i] arr[i] = arr[i - 1] + 1 count += arr[i] - temp }; }; return count; }; console.log(makeUnique(arr));
आउटपुट
और कंसोल में आउटपुट होगा -
1