Help me in solving BOUNCE_BALL problem

My issue

what is wrong in my code

My code

#include <bits/stdc++.h>
using namespace std;
typedef long long int lwi;
int main() {
	// your code goes here
	ios_base::sync_with_stdio(0);
    cin.tie(0);
      lwi t;
      cin>>t;
      while(t--){
          lwi n;
          cin>>n;
          lwi arr[n],msum=0,sum=0,ans=0;
          for(lwi i=0;i<n;i++){
              cin>>arr[i];
              msum+=arr[i];
          }
          if(msum>1){
          for(lwi i=0;i<n;i++){
              sum+=arr[i];
              if(arr[i]==0&&sum!=0&&sum!=msum){
                  if(2*sum==msum){
                      ans+=2;
                  }else{
                      ans+=1;
                  }
              }
          }
          cout<<ans<<endl;
          }else if(msum==0){
           cout<<2*n<<endl;
      }else{
          cout<<(n-1)<<endl;
      }
      }
}

Problem Link: Bouncing Ball Practice Coding Problem