include <bits/stdc++.h>
using namespace std;
int main() {
int t;
cin>>t;
while(t–)
{
int n;
cin>>n;
vector v;
int prev1=0;int prev2=0;
int pos1=0;int pos2=0;
for(int i=0;i<n;i++)
{
int m;
cin>>m;
v.push_back(m);
}
int ans=0;
int sum=0;
if(n%2==0)
{
for(int i=0;i<n/2;i++)
{
if(v[i]!=0)
{
ans+=abs(prev1*(i-pos1));
prev1=prev1+v[i];
pos1=i;
}
sum+=v[i];
}
ans+=prev1*((n/2)-1-pos1);
//cout<<ans<<endl;
for(int i=n-1;i>=n/2;i--)
{
if(v[i]!=0)
{
ans+=abs(prev2*(pos2-i));
prev2=prev2+v[i];
pos2=i;
//cout<<"here"<<ans<<endl;
}
}
ans+=abs(prev2*(pos2-(n/2)));
cout<<ans+abs(sum)<<endl;
}
else
{
for(int i=0;i<(n/2);i++)
{
if(v[i]!=0)
{
ans+=abs(prev1*(i-pos1));
prev1=prev1+v[i];
pos1=i;
// cout<<"here1 "<<ans<<endl;
}
sum+=v[i];
}
ans+=prev1*((n/2)-1-pos1);
// cout<<"here3 "<<ans<<endl;
//cout<<ans<<endl;
for(int i=n-1;i>=(n/2)+1;i--)
{
if(v[i]!=0)
{
ans+=abs(prev2*(pos2-i));
prev2=prev2+v[i];
pos2=i;
// cout<<"here2 "<<ans<<endl;
}
}
ans+=abs(prev2*(pos2-(n/2)+1));
// cout<<"here4 "<<ans<<endl;
cout<<ans+abs(sum)+(abs(sum)-abs(v[(n/2)]))<<endl;
}
}
}
this is my code. Can someone tell whats wrong with my logic.