Help me in solving MATDIAGSUM problem

My issue

output i am getting is 17 whereas expected output is 14

My code

#include <stdio.h>

int main(void) {
	// your code goes here
	int n;int m;
	scanf("%d %d",&n,&m);
	int arr[n][m];
	for(int i=0;i<n;i++){
	    for(int j=0;j<m;j++){
	        scanf(" %d",&arr[i][j]);
	    }
	}
    int primary =0, secondary =0;
    int i=0,j=0;
    while(i<n && j<m){
        primary +=arr[i][j];
        i++;
        j++;
    }
    i=0;
    j=m-1;
    while(i<n && j>=0){
        secondary +=arr[i][j];
        i++;
        j--;
    }
    int ans= primary + secondary;
    
    if(n%2 != 0){
        ans -=arr[n/2][m/2];
        
    }
    printf(" %d",ans);
}
	    

Learning course: Data structures & Algorithms lab
Problem Link: https://www.codechef.com/learn/course/muj-dsa-c/MUJDSAC09/problems/MATDIAGSUM