semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int main()
{
	int n;
	scanf("%d",&n);
	int i,j,k,t;
	for(t=0;t<n;t++)
	{
	int h,l;
	int sum=0;
	scanf("%d %d",&h,&l);
	int a[100][100]={0};
	for(i=0;i<h;i++)
		for(j=0;j<l;j++)
			scanf("%d",&a[i][j]);

	if(h==1)
		for(i=0;i<l;i++)
		sum=sum+a[0][i];
	else
		if(l==1)
			for(j=0;j<h;j++)
				sum=sum+a[j][0];
		else{

	
	for(i=0;i<l;i++)
		sum=sum+a[0][i]+a[h-1][i];
	for(j=1;j<h-1;j++)
		sum=sum+a[j][0]+a[j][l-1];
		}
	
	printf("%d\n",sum);
	
		
	}
}
int main()
{
    int k,n,m,sum; 
    cin>>k;
    int a[100][100];
    for(int l=1;l<=k;l++)
    {
      cin>>m>>n;
      for(int i=0;i<m;i++)
      {
        for(int j=0;j<n;j++)
        cin>>a[i][j];
      }
      sum=0;
      if(m>1)
      {
        for(int i=0;i<n;i++)
        sum=sum+*(*a+i);//??????? 
        for(int i=0;i<n;i++)
        sum=sum+*(*(a+m-1)+i);//???????? 
      }
      if(m==1)//??????? 
      {
        for(int i=0;i<n;i++)
        sum=sum+*(*a+i);
      }
      if(n>1)
      {
        for(int i=1;i<m-1;i++)
        sum=sum+*(*(a+i));//??????? 
        for(int i=1;i<m-1;i++)
        sum=sum+*(*(a+i)+n-1);//???????? 
      }
      if(n==1)//?????? 
      {
        for(int i=1;i<m-1;i++)
        sum=sum+*(*(a+i));
      }
      cout<<sum<<endl;
    }
    return 0;
}
int main(){
	int k;
	scanf("%d",&k);
	for(int z=0;z<k;z++){
		int num[100][100],m,n;
		scanf("%d %d",&m,&n);
		for(int j=0;j<m;j++){
			for(int i=0;i<n;i++){
				scanf("%d",&num[j][i]);
			
			}
		}
		int sum=0;
		//???????????????????????????
		for(int i=0;i<m;i++){
			sum=sum+num[i][0]+num[i][n-1];
		
		}
		for(int i=0;i<n;i++){
			sum=sum+num[0][i]+num[m-1][i];
		}
		sum=sum-num[0][0]-num[0][n-1]-num[m-1][0]-num[m-1][n-1];
		if(z!=0){
			printf("\n");
				
		}
		printf("%d",sum);
		
	}
	return 0;
}
int main(){
    int k,m,n,i,j,a,b,sz[100][100];
    scanf("%d",&k);
    for(a=0;a<k;a++){
    scanf("%d%d",&m,&n);
    int s=0;
        for(i=0;i<m;i++){
            for(j=0;j<n;j++){
                scanf("%d",&(sz[i][j]));
            }
        }
        if(m==1&&n==1){
        s=sz[0][0];}else{
        for(b=0;b<n;b++){
            s=s+sz[0][b]+sz[m-1][b];
        }
        for(b=0;b<m;b++){
            s=s+sz[b][0]+sz[b][n-1];
        }
        s=s-sz[0][0]-sz[0][n-1]-sz[m-1][0]-sz[m-1][n-1];}
        printf("%d\n",s);
    }
    return 0;
}
int main()
{
	int *p = {NULL}, a[100][100], z, m, n, i = 1, j = 0, s;
	cin >> z;
	while(i <= z)
	{
		s = 0;
		cin >> m >> n;
		p = *a;
		for(j = 0; j < m * n; j++)
		{
			cin >> *p++;
			if(j < n || j >= n * (m - 1) || j % n == 0 || (j + 1) % n == 0)
				s += *(p - 1);
		}
		cout << s << endl;
		i++;
	}
	return 0;
}
int main()  							//???
{
	int side_sum(int *p);				//????
	int k;
	int *p;								//????*p???k??????
	cin >> k;
	p = &k;
	side_sum(p);						//????
	return 0;
}
int side_sum(int *p)					//??????????
{
	int  k , m , n , i , j , l , sum=0;
	int a[100][100];
	k = *p;
	for(i=0; i<k; i++)
	{
		sum=0;							//?sum???0
		cin >> m >> n;					//???????m???n 
		for(j=0; j<m; j++)				
			for(l=0; l<n; l++)
			{
				cin >>  a[j][l];
				if(j == 0  ||  j == m-1)
					sum +=a[j][l];
				else 
					if(l == 0  ||  l == n-1)
						sum +=a[j][l];
			}
			cout << sum << endl;		//????????????
	}
	return 0;
}
int main(){
	int sz[100][100],m,n,k,i,j,q,s;
	scanf("%d",&k);
	int*sum
		=(int*)malloc(sizeof(int)*k);
	s=0;
	
	for(q=0;q<k;q++){
		sum[q]=0;
		scanf("%d%d",&m,&n);
		for(i=0;i<m;i++){
			for(j=0;j<n;j++){
				scanf("%d",&sz[i][j]);
			}
		}
	
		for(i=0;i<n;i++){
			sum[q]+=sz[0][i];
		}
		for(i=0;i<m;i++){
			sum[q]+=sz[i][0];
		}
		for(i=0;i<n;i++){
			sum[q]+=sz[m-1][i];
		}
		for(i=0;i<m;i++){
			sum[q]+=sz[i][n-1];
		}
		sum[q]-=sz[0][0];
		sum[q]-=sz[0][n-1];
		sum[q]-=sz[m-1][0];
		sum[q]-=sz[m-1][n-1];
		
		printf("%d\n",sum[q]);
		
	}
	
	free(sum);
return 0;

}
int main(){
    int N=100;
    int k,m,n,i,a[N][N],b[N],c,d,e[N],f[N];
    scanf("%d",&k);
    for(i=0;i<k;i++){
        b[i]=0;
        scanf("%d %d",&e[i],&f[i]);
        m=e[i];n=f[i];
        for(c=0;c<m;c++){
            for(d=0;d<n;d++){
                scanf("%d",&a[c][d]);
            }
        }
        for(c=0;c<m;c++){
            b[i]=b[i]+a[c][0]+a[c][n-1];
        }
        for(d=1;d<n-1;d++){
            b[i]=b[i]+a[0][d]+a[m-1][d];
        }
        printf("%d",b[i]);
        printf("\n");
    }
    return 0;
}
int main()
{
	int n;
	int a,b;
	int i,j;
	int sum;
	int c[100][100];
	cin>>n;
	while(n>0)
	{
		cin>>a>>b;
		sum=0;
	
		for(i=0;i<a;i++)
		{
			for(j=0;j<b;j++)
				cin>>c[i][j];
		}	
		int(*p)[100];
		p=c;	
		for(i=0;i<b;i++)
			sum+=*(*p+i);
		for(j=1;j<a-1;j++)
			sum+=*(*(p+j))+*(*(p+j)+b-1);
		for(i=0;i<b;i++)
			sum+=*(*(p+a-1)+i);
		cout<<sum<<endl;
		n--;
	}
	return 0;
}
void main()
{
	int i,m,n,sum,a[10001],*p;
	scanf("%d",&i);
	while(i--){
		scanf("%d%d",&m,&n);
		for(p=a;p<a+m*n;p++)
			scanf("%d",p);
		sum=0;
		for(p=a;p<a+n;p++)
			sum+=*p;
		if(m!=1)
			for(p=a+(m-1)*n;p<a+m*n;p++)
				sum+=*p;
		for(p=a+n;p<a+(m-1)*n;p+=n)
			sum+=*p;
		for(p=a+n*2-1;p<a+m*n-1;p+=n)
			sum+=*p;
		printf("%d\n",sum);
	}
}
int main()
{
    int k,m,n,sz[200][200],result=0;
	scanf("%d",&k);
	int i,p,q;
	for (i=0;i<k;i++)
	{
		scanf("%d%d",&m,&n);
		for (p=0;p<m;p++)
		{
			for (q=0;q<n;q++)
			{
				scanf("%d",&sz[p][q]);
			}
			if(p==0||p==m-1)
			{
                for (q=0;q<n;q++)
				{
                 result+=sz[p][q];
				}}
			else 
			{
				result+=sz[p][0];
				result+=sz[p][n-1];
			}
		}
        printf("%d\n",result);
		result=0;
	}
	return 0;
}
int main()
{
	int N=0,n=0,m=0,i=0,j=0,k=0;
	cin>>N;
	for(i=0;i<N;i++)
	{
		int sum=0;
		int a[102][102];
		int *p=*a;
		cin>>n>>m;
		for(j=0;j<n;j++)
		{
			for(k=0;k<m;k++)
			{
				cin>>a[j][k];
			}
		}
		for(k=0;k<m;k++,p++)
		 sum=sum+*p;
		for(p=p+101,j=1;j<n;j++)
			sum=sum+*p,p=p+102;
		for(p=p-103,k=m-2;k>=0;k--,p--)
			sum=sum+*p;
		for(p=p-101,j=n-2;j>0;j--,p=p-102)
			sum=sum+*p;
		cout<<sum<<endl;
	}
	return 0;
}
int main()
{
	int sum,a,b,m,n,k,i,j;
	int num[100][100];
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		sum=0;
		for(a=0;a<100;a++)
		{
			for(b=0;b<100;b++)
			{
				num[a][b]=0;
			}
		}
		scanf("%d %d",&m,&k);
		if(m==1&&k==1)
		{
			scanf("%d",&j);
			printf("%d",j);
		}
		else if(m==1&&k!=1)
		{
			for(a=0;a<k;a++)
			{
				scanf("%d",&num[0][a]);
				sum=sum+num[0][a];
			}
			printf("%d",sum);
		}
		else if(m!=1&&k==1)
		{
			for(a=0;a<m;a++)
			{
				scanf("%d",&num[a][0]);
				sum=sum+num[a][0];
			}
			printf("%d",sum);
		}
		else
		{
		for(a=0;a<m;a++)
		{
			for(b=0;b<k;b++)
			{
				scanf("%d",&num[a][b]);
			}
		}
		for(a=0;a<k;a++)
		{
			sum=sum+num[0][a]+num[m-1][a];
		}
		for(a=1;a<(m-1);a++)
		{
			sum=sum+num[a][0]+num[a][k-1];
		}
		printf("%d\n",sum);
		}
	}
}
int main () {
      int i,j,k,n,row[99],col[99],s[99][99][99],sum[99]={0};
      scanf("%d",&n);
      for(i=0;i<n;i++){
         scanf("%d %d",&row[i],&col[i]);
         for(j=0;j<row[i];j++){
            for(k=0;k<col[i];k++){
                scanf("%d",&s[i][j][k]);
                if((j==0)||(k==0)||(j==(row[i]-1))||(k==col[i]-1))
                            { sum[i]+=s[i][j][k];}
                }
         }
         
      }
      for(i=0;i<n;i++){
         printf("%d\n",sum[i]);
         }
         
      
       
       
       
       
       return 0;
       }
int main() {
	int n, a[100][100], row, col, sum = 0;
	cin >> n;
	for(int i = 0; i < n; i ++){
		sum = 0;
		cin >> row >> col;
		for(int i = 0; i < row; i ++)
			for(int j = 0; j < col; j ++)
				cin >> a[i][j];
		if(row == 1 && col == 1) cout <<*(a[0]);
		else {
		for(int i = 0; i < col; i ++){
			sum += *(a[0] + i);
			sum += *(a[row-1] + i);
		}
		for(int j = 1; j <row-1; j ++){
			sum += *(a[j]);
			sum += *(a[j]+col-1);
		}
		cout << sum <<endl;
	}
	}
	return 0;
}
int main()
{
int k,m,n,i,j,a[100][100],l,b[100];
scanf("%d",&k);
for(i=0;i<k;i++)
{b[i]=0;
scanf("%d%d",&m,&n);
for(j=0;j<m;j++)
{
	for(l=0;l<n;l++)
	{scanf("%d",&a[j][l]);
	if(j==0||j==m-1)
		b[i]+=a[j][l];
	else if(l==0||l==n-1)
		b[i]+=a[j][l];
	}
}
}
for(i=0;i<k;i++)
{printf("%d\n",b[i]);}
}
void main()
{
	int n=0;
	int i=0,j=0,k=0;
	int row,col;
	int str[100][100]={0};
	int x1,x2,x3,x4,sum;
	scanf("%d",&n);
	for(;i<n;i++)
	{
		x1=0;x2=0;x3=0;x4=0;
		scanf("%d%d",&row,&col);
		for(j=0;j<row;j++)
			for(k=0;k<col;k++)
				scanf("%d",&str[j][k]);
		for(j=0;j<col;j++)
			x1+=str[0][j];
		for(j=0;j<row;j++)
			x2+=str[j][0];
		for(j=0;j<col;j++)
			x3+=str[row-1][j];
		for(j=0;j<row;j++)
			x4+=str[j][col-1];
		sum=x1+x2+x3+x4-str[0][0]-str[0][col-1]-str[row-1][0]-str[row-1][col-1];
		printf("%d\n",sum);
	}
}
int map[100][100];
int m,n;
void count()
{
    int i,j;
    int sum=0;
    for(i=0;i<m;i++)
    {
        for(j=0;j<n;j++)
        {
            if(i+j==j||i+j==i||i+j==i+n-1||i+j==j+m-1)
            {
                sum=sum+map[i][j];
            }
        }
    }
    cout<<sum<<endl;
}
int main()
{
    int sum;int k=0;
    cin>>sum;
    int i,j;
    for(k=0;k<sum;k++)
    {
        cin>>m>>n;
        for(i=0;i<m;i++)
        {
            for(j=0;j<n;j++)
            {
                cin>>map[i][j];
            }
        }
        count();
    }
}
int main()
{
	int k,m,n,i,j,h,a[1000][1000]={0},result;
	cin>>k;
	for(h=0;h<k;h++)
	{
		result=0;
		cin>>m>>n;
		for(i=0;i<m;i++)
			for(j=0;j<n;j++)
				cin>>a[i][j];
		for(j=0;j<n;j++)
			result=result+a[0][j]+a[m-1][j];
		for(i=1;i<m-1;i++)
			result=result+a[i][0]+a[i][n-1];
		cout<<result<<endl;
	}
	return 0;
}
int main()
{
	int k,m,n,a,sum[100]={0};
	int x,y,z;
	cin>>k;

	for(x=0;x<k;x++)
	{
		cin>>m>>n;
		for(y=0;y<m;y++)
		{
			for(z=0;z<n;z++)
			{
				cin>>a;
				if(z==0 || y==0 || z==n-1 || y==m-1)sum[x]=sum[x]+a;
			}
		}
	}

	for(x=0;x<k;x++)cout<<sum[x]<<endl;

	return 0;
}
int main()
{
    int group=0;
    int row=0,col=0;
    int a[100][100];
    int i,j,sum=0;

    cin>>group;
    while(group--)
    {
        cin>>row>>col;
        for(i=0;i<row;i++)//??
            for(j=0;j<col;j++)
                cin>>a[i][j];
        sum=0;
        if(row==1&&col==1)  sum=a[0][0];//????
        else
        {
            for(i=0;i<col;i++)//??????????
                {sum+=a[0][i];  if(row>1)   sum+=a[row-1][i];}
            for(i=1;i<=row-2;i++)//????????????
                {sum+=a[i][0];  if(col>1)   sum+=a[i][col-1];}
        }
        cout<<sum<<endl;

    }
}
int A[100][100];
int main()
{
	int *pt;
	int i,j,k;
	int m,n;
	int *re;
	int B[200];
	int number;
	scanf("%d",&number);
	re=B;
	for(i=0;i<200;i++)
	{
		*(re+i)=0;
	}
	re=B;
	for(i=0;i<number;i++)
	{
		for(j=0;j<100;j++)
		{
			for(k=0;k<100;k++)
			{
				*(*(A+j)+k)=0;
			}
		}
		
		scanf("%d%d",&m,&n);
		for(j=0;j<m;j++)
		{
			for(k=0;k<n;k++)
			{
				scanf("%d",*(A+j)+k);
			}
		}
		pt=*A;
		for(j=0;j<n;j++)
		{
			if(j<(n-1))
			{
			*re=*re + *pt;
			pt++;
			}
			else
			{
				*re=*re + *pt;
				pt=pt+100;
			}
		}
		for(j=1;j<m;j++)
		{
			if(j<(m-1))
			{
			*re=*re + *pt;
			pt=pt+100;
			}
			else
			{
				*re=*re + *pt;
				pt=pt-1;
			}
		}
		for(j=1;j<n;j++)
		{
			if(j<(n-1))
			{
			*re=*re + *pt;
			pt--;
			}
			else
			{
				*re=*re + *pt;
				pt=pt-100;
			}
		}
		for(j=1;j<(m-1);j++)
		{
			*re=*re+ *pt;
			pt=pt-100;
		}
		re++;
	}
	re=B;
	for(i=0;i<number;i++)
	{
		printf("%d\n",*(re+i));

	}
	return 0;
}
const int N=110;

int a[N][N];

int main()
{
	int i,j,k;
	int x;
	int m,n;
	scanf("%d",&x);
	while(x--)
	{
		memset(a,0,sizeof(a));
		scanf("%d%d",&m,&n);
		for(i=0;i<m;i++)
		{
			for(j=0;j<n;j++)
			{
				scanf("%d",&a[i][j]);
			}
		}
		int sum=0;
		if(m==1)
		{
			for(i=0;i<n;i++)
				sum+=a[0][i];
		}
		else if(n==1)
		{
			for(i=0;i<m;i++)
				sum+=a[i][0];
		}
		else
		{
			for(i=0;i<n;i++)
			{
			sum+=a[0][i];
			sum+=a[m-1][i];
			}
			for(i=1;i<m-1;i++)
			{
			sum+=a[i][0];
			sum+=a[i][n-1];
			}
		}
		printf("%d\n",sum);
	}
	return 0;
}
int haha()
{
	int m,n,sum,i,j,a[105][105];
	scanf("%d%d",&m,&n);

	
				
				
				
	for(i=1;i<=m;i++)
		for(j=1;j<=n;j++)
			scanf("%d",&*(*(a+i)+j));

		sum=0;

		if(m==1)
		for(j=1;j<=n;j++)
			sum=sum+*(*(a+1)+j);
		else
			if(n==1)
				for(i=1;i<=m;i++)
					sum=sum+*(*(a+i)+1);
				else
				{

		for(j=1;j<=n;j++)
			sum=sum+*(*(a+1)+j);
		
		for(j=1;j<=n;j++)
			sum=sum+*(*(a+m)+j);

		for(i=2;i<=m-1;i++)
			sum=sum+*(*(a+i)+1);
		
		for(i=2;i<=m-1;i++)
			sum=sum+*(*(a+i)+n);}


		return(sum);
}
int main()
{
 
int i,j,k,l,m,n,a[1050];



scanf("%d",&n);
for(i=1;i<=n;i++)
*(a+i)=haha();


for(i=1;i<=n;i++)
printf("%d\n",*(a+i));

  }
int imat[100][100];

int main()
{
    int n;
    cin >> n;
    int a,b;
    for(int i = 0; i < n; i++){
        cin >> a >> b;
        for(int j = 0; j < a; j++){
            for(int k = 0; k < b; k++){
                cin >> imat[j][k];
            }
        }

        int (*p)[100] = &(imat[0]);

        int counter = 0;

        for(int i = 0; i < a; i++){
            for(int j = 0; j < b; j++){
                if( j%b==0 || j%b==(b-1) || i==0 || i==(a-1))
                    counter = counter + *(*(p+i)+j);
            }
        }
        //counter = counter - *(*(p)) - *(*(p+a-1)) - *(*(p+a-1)+b-1) - *(*(p)+b-1);
        cout << counter << endl;
    }
    return 0;
}
int main()
{
	int k,m,n;
	int sum=0;
	cin>>k;
	int a[100][100];
	for(int i=0;i<k;i++)
	{   sum=0;
		cin>>m>>n;
		for(int i=0;i<m;i++)
			for(int j=0;j<n;j++)
				cin>>a[i][j];
		if(m!=1&&n!=1)
		{
		  for(int i=0;i<n;i++)
			sum+=*(*a+i)+*(*(a+m-1)+i);
		  for(int i=1;i<m-1;i++)
			sum+=*(*(a+i))+*(*(a+i)+n-1);
		  cout<<sum<<endl;
		}
		else cout<<**a<<endl;
	}
	return 0;
}
int main()
{
	int k,l;
	int m,n,i,j,s1,s2,s3,s4,s;
	int sz[100][100];
	scanf("%d",&k);
	int *sf=(int*)malloc((sizeof(int)*k));
	for(l=0;l<k;l++)
	{		
		s1=0;
		s2=0;
		s3=0;
		s4=0;
		s=0; 
		scanf("%d %d",&m,&n);
		for(i=0;i<m;i++)
		{
			for(j=0;j<n;j++)
			{
				scanf("%d",&sz[i][j]);
			}
		}
		for(i=0;i<m;i++)
		{
			s1+=sz[i][0];
			s2+=sz[i][n-1];
		}
		for(j=0;j<n;j++)
		{
			s3+=sz[0][j];
			s4+=sz[m-1][j];
		}
		s+=s1+s2+s3+s4-sz[0][0]-sz[0][n-1]-sz[m-1][0]-sz[m-1][n-1];
	    sf[l]=s;
	}
	for(l=0;l<k;l++)
	{
		printf("%d\n",sf[l]);
	}
	return 0;
}
int main()
{
	int i, k, m, n, a[100][100];
	cin >> k;
	for (i = 1; i <= k; i ++)
	{
		cin >> m >> n;
		int r, s;
		for (r = 0; r < m; r ++)
			for (s = 0; s < n; s ++)
				cin >> a[r][s];
		int sum = 0;
		for (r = 0; r < m; r ++)
			for (s = 0; s < n; s ++)
				if (r == 0 || r == m - 1 || s == 0 || s == n - 1)
					sum = sum + a[r][s];
		cout << sum << endl;
	}
	return 0;
}
/*
?? ???2009???? 
?? 
????????????????????????????????????????????????????????????
 
???? 
??????k????k???? 
????????????????? 
???????????m???n?m<100?n<100???????????? 
??????m?????????n???????????????? 

 
???? 
??????????????????
 
???? 
1
4 4
1 1 1 1
0 0 0 0
1 0 1 0
0 0 0 0
 
???? 
5

 */


int main()
{
    int a[101][101];
	int n,k,row,col,i,j,sum=0;

cin>>n;

for (k=1;k<=n;k++)
{
	cin>>row>>col;
	for (i=1;i<=row;i++)
	{
		for (j=1;j<=col;j++)
		{
			cin>>a[i][j];
		}
	}
	for (j=1;j<=col;j++)    sum=sum+a[1][j];
	for (i=2;i<=row;i++)    sum=sum+a[i][col];
	for (j=1;j<=col-1;j++)  sum=sum+a[row][j];
	for (i=2;i<=row-1;i++)  sum=sum+a[i][1];
	cout<<sum<<endl;
	sum=0;
}

	return 0;

}
void sum(int i)
{
	int m,n,j,k,sum=0;
	scanf("%d %d",&m,&n);
	int(*p)[100]=(int(*)[100])calloc(100,100*sizeof(int));
	for(j=0;j<m;j++)
	{
		for(k=0;k<n;k++)
			scanf("%d",*(p+j)+k);
	}
	for(j=0;j<m;j++)
	{
		if(j==0||j==m-1)
		{
			for(k=0;k<n;k++)
				sum=sum+*(*(p+j)+k);
		}
		else
			sum=sum+*(*(p+j))+*(*(p+j)+n-1);
	}
	printf("%d\n",sum);
}



void main()
{
	int k;
	scanf("%d",&k);
	int i;
	for(i=0;i<k;i++)
		sum(i);
}
int main()
{
	int x;
	cin>>x;
	int sum=0;
	int m,n;
	
	int g,i,j,temp;
	for(g=0;g<x;g++)
	{
		cin>>m;
		cin>>n;
		sum=0;
		for(i=0;i<n;i++)
		{
			cin>>temp;
			sum+=temp;
		}

		for(i=0;i<m-2;i++)
		{
			for(j=0;j<n;j++)
			{
				cin>>temp;
				if(j==0 || j==n-1)
				{
					sum+=temp;
				}
			}
		}
		if(m!=1)
		{
			for(i=0;i<n;i++)
			{
				cin>>temp;
				sum+=temp;
			}
		}
		cout<<sum<<endl;
	}
	return 0;

}
void main()
{
	int l,n,m,t,i,j;
	scanf("%d",&t);
	for (l=1;l<=t;l++)
	{
		scanf("%d%d",&n,&m);
		int sum=0,a;
		for (i=1;i<=n;i++)
			for (j=1;j<=m;j++)
			{
				scanf("%d",&a);
				if (i==1||j==1||i==n||j==m)
					sum+=a;
			}
		printf("%d\n",sum);
	}
}
int main()
{
	int number[100][100];
	int k,i,x,y;
	int m,n;
	cin>>k;
	for(i=0;i<k;i++)
	{
		int sum=0;
		cin>>m>>n;
		for(x=0;x<m;x++)
		{
			for(y=0;y<n;y++)
			{
				cin>>*(*(number+x)+y);
			}
		}
		if(n==1&&m==1)
			cout<<**number<<endl;
		else
		{
			for(x=0;x<m;x++)
			{
				sum+=*(*(number+x));
				sum+=*(*(number+x)+n-1);
			}
			//cout<<sum<<endl;

			for(y=0;y<n;y++)
			{
				sum+=*(*(number)+y);
				sum+=*(*(number+m-1)+y);
			}
			//cout<<sum<<endl;
			sum=sum-*(*(number))-*(*(number)+n-1)-*(*(number+m-1))-*(*(number+m-1)+n-1);
			cout<<sum<<endl;
		}
	}
	return 0;
}
int main()
{
    int k,m,n,i,j,a[100][100],sum;
    int *p;
    scanf("%d",&k);
    for(;k>0;k--)
    {
                 sum=0;
                 scanf("%d%d",&m,&n);
                 for(i=0;i<m;i++)
                 for(j=0;j<n;j++)
                 scanf("%d",&a[i][j]);
                 for(p=a[0];p<a[0]+n;p++)
                 sum+=*p;
                 for(p=p+99;p<a[0]+(m-1)*100+n;p=p+100)
                 sum+=*p;
                 for(p=p-101;p>a[0]+(m-1)*100-1;p--)
                 sum+=*p;
                 for(p=p-99;p>a[0];p=p-100)
                 sum+=*p;
                 printf("%d\n",sum);
    }
    return 0;
}
void f()
{
 int a=0,i,j,m,n,(*p)[100];
 scanf("%d %d",&m,&n);
 p=(int(*)[100])malloc(m*100*sizeof(int));
 for(i=0;i<m;i++)
  for(j=0;j<n;j++)
   scanf("%d",*(p+i)+j);
 for(j=0;j<n;j++)
  a=a+*(*p+j)+*(*(p+m-1)+j);
 for(i=1;i<m-1;i++)
  a=a+*(*(p+i))+*(*(p+i)+n-1);
 printf("%d\n",a);
}
void main()
{
 int c,k;
 scanf("%d",&k);
 for(c=0;c<k;c++)
  f();
}
void main()
{
	int n=0;
	int i=0,j=0,k=0;
	int row,col;
	int str[100][100]={0};
	int sum;
	scanf("%d",&n);
	for(;i<n;i++)
	{
		sum=0;
		scanf("%d%d",&row,&col);
		for(j=0;j<row;j++)
			for(k=0;k<col;k++)
				scanf("%d",&str[j][k]);
		for(j=0;j<col;j++)
			sum+=str[0][j]+str[row-1][j];
		for(j=1;j<row-1;j++)
			sum+=str[j][0]+str[j][col-1];
		printf("%d\n",sum);
	}
}
/*??????????  ??*/
int main()
{
	int t,i,j,k,a[100][100][100],b[100]={0},m[100],n[100];
	cin>>t;
	for(i=0;i<t;i++){
		cin>>m[i]>>n[i];
		for(j=0;j<m[i];j++){
			for(k=0;k<n[i];k++){
				cin>>a[i][j][k];}}
		for(j=0;j<m[i];j++)
			b[i]=b[i]+a[i][j][0]+a[i][j][n[i]-1];
		for(j=0;j<n[i];j++)
			b[i]=b[i]+a[i][0][j]+a[i][m[i]-1][j];
		b[i]=b[i]-a[i][0][0]-a[i][m[i]-1][0]-a[i][0][n[i]-1]-a[i][m[i]-1][n[i]-1];
		cout<<b[i]<<endl;}
		return 0;
}
//int* getmemory(int m,int n)
//{
//	int *p=(int*)calloc(m,sizeof(int)*n);
//	return p;
//}
int count(int b,int c)
{
	int m=b,n=c;
	int i,j,sum,num[100][100],(*a)[100];
//	*a=getmemory(m,n);
	a=num;
	sum=0;
	for(i=0;i<m;i++)
	{
		for(j=0;j<n-1;j++)scanf("%d ",*(a+i)+j);
		scanf("%d",*(a+i)+(n-1));
	}
	for(j=0;j<n;j++)
	{
		sum=sum+(*(*a+j))+(*(*(a+m-1)+j));
	}
	for(i=1;i<m-1;i++)
	{
		sum=sum+(*(*(a+i)))+(*(*(a+i)+(n-1)));
	}
	return sum;
}

void main()
{
	int i,k,m,n,sum[100];
	scanf("%d\n",&k);
	for(i=0;i<k;i++)
	{
		scanf("%d %d",&m,&n);
		sum[i]=count(m,n);
	}
	for(i=0;i<k;i++)printf("%d\n",sum[i]);
}
int main (){
   int sz[N][M];
   int k,n,m,i,j,l;
   int sum=0;
   
   scanf("%d ",&k);
   
   for (l=0;l<k;l++){
	   sum=0;
scanf("%d%d",&n,&m);
   for (i=0;i<n;i++){
	   for(j=0;j<m;j++){
	   scanf("%d ",&sz[i][j]);
	   }
   }
   
   
   for(j=0;j<m-1;j++){
	   
		  sum+=sz[0][j];
   }
   for(i=0;i<n-1;i++){
          sum+=sz[i][m-1];
   }
   for(j=1;j<m;j++){
          sum+=sz[n-1][j];
   }                      
   for(i=1;i<n;i++){
          sum+=sz[i][0];
   }
printf("%d\n",sum);
   }
   return 0;
}
int main()//?????
{
	int n,num[100][2],i,j,k,a[100][100]={0},*p=NULL,sum=0,m;
	cin>>n;//????????
	for(k=0;k<n;k++)
	{
		cin>>num[k][0]>>num[k][1];//??????????
		sum=0;
		for(i=0;i<num[k][0];i++)
		{
			for(j=0;j<num[k][1];j++)
			{
				cin>>a[i][j]; //???????
			}}
		for(m=0;m<num[k][0];m++)//????????
		{if(m==0||m==num[k][0]-1)//??????????
		{for(p=a[m];p<a[m]+num[k][1];p++)sum=sum+*p;}//???????????sum
		else sum=sum+a[m][0]+a[m][num[k][1]-1];//???????????????????
		}
		cout<<sum<<endl;//??sum
	}
	return 0;
}//?????
int main()
{
	int num , ii , m , n , i , j , str[ 111 ][ 111 ] , total ;

	cin >> num ;

	for( ii = 1 ; ii <= num ; ii ++ )
	{
		cin >> m >> n ;

		for( i = 0 ; i < m ; i ++ )
			for( j = 0 ; j < n ; j ++ )
				cin >> str[ i ][ j ] ;

		total = 0 ;

		for( i = 0 ; i < n ; i ++ )
			total = total + *( *str + i ) ; //???

		for( i = 0 ; i < n ; i ++ )
			total = total + *( *( str + m - 1 ) + i ) ; //?m?

		for( i = 1 ; i < m - 1 ; i ++ )
			total = total + **( str + i ) ; //???

		for( i = 1 ; i < m - 1 ; i ++ )
			total = total + *( *( str + i ) + n - 1 ) ; //???

		cout << total << endl ;

	}

	return 0 ;
}
int main()
{

	int k;
	scanf("%d",&k);
	int s1=0,s2=0,s3=0,s4=0,s=0;
	int r=0,c=0;

	int jz[100][100];
	int m,n;
	int i=1;
	while(i<=k){
		scanf("%d %d",&m,&n);
		for(int jm=0;jm<m;jm++){
			for(int jn=0;jn<n;jn++){
				scanf("%d",&jz[jm][jn]);
			}
		}
		r=0;
		c=0;
		for(c=0;c<n;c++){
			s1+=jz[r][c];
		}
		r=m-1;
		c=0;
		for(c=0;c<n;c++){
			s2+=jz[r][c];
		}
		r=0;
		c=0;
		for(r=0;r<m;r++){
			s3+=jz[r][c];
		}
		r=0;
		c=n-1;
		for(r=0;r<m;r++){
			s4+=jz[r][c];
		}
		s=s1+s2+s3+s4-jz[0][0]-jz[0][n-1]-jz[m-1][0]-jz[m-1][n-1];
		printf("%d",s);
		s1=0;
		s2=0;
		s3=0;
		s4=0;
		s=0;

		if(i!=k){
			printf("\n");
		}








		i++;
	}
	

				

	return 0;
}
int main()
{
	int i,k,col[N],row[N],a[100][N][N],c,r,sum[N];
	cin>>k;
	for(i=0;i<k;i++)
	{
	     sum[i]=0;
		cin>>col[i];
		cin>>row[i];
		
		for(c=0;c<col[i];c++)
		{
			for(r=0;r<row[i];r++)
			{
				cin>>a[i][c][r];
			}
		}
        
        for(c=0;c<row[i];c++)
			sum[i]=sum[i]+a[i][0][c]+a[i][col[i]-1][c];
		for(c=1;c<col[i]-1;c++)
			sum[i]=sum[i]+a[i][c][0]+a[i][c][row[i]-1];

		cout<<sum[i]<<endl;
		

	}
	

	return 0;
}
int main()
{
	int t,tri[100][100],h,l,*point=tri[0];
	cin>>t;
	for(int i=1;i<=t;i++)
	{
		cin>>h>>l;
		int temp=0;
		for(int p=1;p<=h;p++)
		{
			for(int q=1;q<=l;q++)
			{
				cin>>*(point+100*p+q);
				if(p==1||q==1||p==h||q==l)
					temp+=*(point+100*p+q);
			}
		}
		cout<<temp<<endl;
	}

	return 0;
}
//**************************** 
//*?? ??????????**
//*?? ??? 1100016602   **
//*?? 2011?10?28?      **
//**************************** 


int main()
{
    int i , j , k , l , m , n , x , s ;             //??????i,j,l???????k????m????n???????x????s 
    cin >> k ;                                      //??k 
    for (i = 1 ; i <= k ; i ++ )                    //???k? 
    {
        cin >> m >> n ;                             //?????m,???n 
        for (j = 1 , s = 0 , m -- ; j <= n ; j ++ ) //???s,? m -- ??????????????????????????????????????s? 
        { 
            cin >> x ;                              //??x 
            s += x ;                                //??s? 
            }
        for (j = 2 ; j <= m ; j ++ )                //??????????m - 1????m????1?????????????????????? 
            for (l = 1 ; l <= n ; l ++ )
            {
                cin >> x ;                          //??x 
                if ((l == 1) || (l == n))           //????????1???n,??????????s? 
                   s += x ; 
                   }
        for (j = 1 ; j <= n ; j ++ )                //??????????????????????s? 
        {
            cin >> x ;                              //??x 
            s += x ;                                //??s?
            }
        cout << s << endl ;                         //??s 
        }
    return 0 ; 
}
int main()
{
	int p,i,j,k,m,n;
	int sum=0;
    scanf("%d",&p);
	int sz[100][100];
	for(i=0;i<p;i++){
        scanf("%d %d",&m,&n);
		for(j=0;j<m;j++){
			for(k=0;k<n;k++){
				scanf("%d",&sz[j][k]);
				if(j==0||j==(m-1))
					sum+=sz[j][k];
				else if(j!=0&&j!=(m-1)&&k==0)
						sum+=sz[j][k];
				else if(j!=0&&j!=(m-1)&&k==(n-1))
						sum+=sz[j][k];
			}
		}
		printf("%d\n",sum);
		sum=0;
	}
					
	return 0;
}