#include <iostream>
using namespace std;
class Solution {
public:
int findEquilibrium(vector<int> &arr){
int n = arr.size();
vector<int> pre(n);
vector<int> suff(n);
pre[0] = arr[0];
// calculate prefix array
for(int i=1;i<n;i++)
{
pre[i]= pre[i-1]+arr[i];
}
//calculate suffix arry
suff[n-1] = arr[n-1];
for(int i=n-2;i>=0;i--)
{
suff[i] = suff[n-2]+arr[i];
}
for(int i=0;i<n;i++)
{
if(pre[i]==suff[i]){
return i;
}
}
return -1;
}
}
int main() {
cout << "Function to fine equilibrium point in array!";
return 0;
}
#include <iostream>
using namespace std;
class Solution {
public:
int findEquilibrium(vector<int> &arr){
int n = arr.size();
vector<int> pre(n);
vector<int> suff(n);
pre[0] = arr[0];
// calculate prefix array
for(int i=1;i<n;i++)
{
pre[i]= pre[i-1]+arr[i];
}
//calculate suffix arry
suff[n-1] = arr[n-1];
for(int i=n-2;i>=0;i--)
{
suff[i] = suff[n-2]+arr[i];
}
for(int i=0;i<n;i++)
{
if(pre[i]==suff[i]){
return i;
}
}
return -1;
}
}
int main() {
cout << "Function to fine equilibrium point in array!";
return 0;
}