ধরুন আমাদের n উপাদান সহ একটি অ্যারে A আছে। এবং n সমান। আমরা অ্যারের ভারসাম্য প্রয়োজন যে মান খুঁজে বের করতে হবে. যেহেতু অ্যারের আকার সমান, তাহলে আমরা দুটি অর্ধেক করতে পারি। বাম অর্ধেক এবং ডান অর্ধেক এর যোগফল ভারসাম্য করা প্রয়োজন. সুতরাং যদি অ্যারেটি হয় A =[1, 2, 3, 2, 5, 3] বাম অর্ধেক এর যোগফল 6, এবং ডান অর্ধেক এর যোগফল 10। তাই অ্যারের ভারসাম্য করতে আমাদের 4 প্রয়োজন।
কাজটি সহজ, আমরা প্রথম এবং দ্বিতীয় অর্ধের যোগফল খুঁজে বের করব, তারপর পরম পার্থক্য খুঁজে বের করব এবং ফেরত দেব।
উদাহরণ
#include<iostream> #include<cmath> using namespace std; int getValueToBalance(int a[], int n) { int left_sum = 0; for (int i = 0; i < n/2; i++) left_sum += a[i]; int right_sum = 0; for (int i = n/2; i < n; i++) right_sum += a[i]; return abs(left_sum - right_sum); } int main() { int arr[] = {1, 2, 3, 2, 5, 3}; int n = sizeof(arr)/sizeof(arr[0]); cout << "The number for balancing: " << getValueToBalance(arr, n); }
আউটপুট
The number for balancing: 4