समस्या
हमें एक JavaScript फ़ंक्शन लिखना है जो पूर्णांकों की एक सरणी, arr, को पहला और एकमात्र तर्क के रूप में लेता है।
हमारे फ़ंक्शन को सरणी से एक ऐसा इंडेक्स चुनकर वापस करना आवश्यक है जिसके बाईं ओर के तत्वों का योग उसके दाईं ओर के तत्वों के योग के बराबर हो। यदि सरणी में ऐसा कोई इंडेक्स मौजूद नहीं है, तो हमें -1 वापस करना चाहिए।
उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -
इनपुट
const arr = [1, 2, 3, 4, 3, 2, 1];
आउटपुट
const output = 3;
आउटपुट व्याख्या
क्योंकि इंडेक्स 3 के दोनों ओर के तत्वों का योग बराबर है (6)।
उदाहरण
निम्नलिखित कोड है -
const arr = [1, 2, 3, 4, 3, 2, 1];
const balancingIndex = (arr = []) => {
const findSum = arr => arr.reduce((acc, x) => acc + x, 0);
for (let i = 0; i < arr.length; i++) {
const leftSum = findSum(arr.slice(0, i));
const rightSum = findSum(arr.slice(i + 1));
if (leftSum === rightSum) {
return i;
}
}
return -1;
};
console.log(balancingIndex(arr));
आउटपुट
3