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

	}
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			if(sum[i][j]==0)
			{
				s++;
				
			}
					
		}
		if(s>2)
		{
			break;
		}
	}
	for(j=0;j<n;j++)
	{
		for(i=0;i<n;i++)
		{
			if(sum[i][j]==0)
			{
				t++;
				
			}
					
		}
		if(t>2)
		{
			break;
		}
	}
	printf("%d",s*t-(2*s+2*t-4));	

	
return 0;
}
void main()
{
	int i,j,n,c[1000][1000],count=0,mark;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
			scanf("%d",&c[i][j]);
	}
	for(i=0;i<n;i++)
	{
		mark=0;
		for(j=0;j<n;j++)
		{	
			if(c[i][j]==0&&c[i][j+1]==0)
				break;
			else
			{
				if(c[i][j]==0)
					mark++;
			}
			if(c[i][j]&&mark%2)
				count++;
		}
	}
	printf("%d\n",count);
}
int main()
{
    int image[1000][1000];
    int n, i,j,area, begRow,begCol,endRow,endCol,isBreak;

    scanf("%d",&n);
    for(i=0;i<n;i++)
        for(j=0;j<n;j++)
        {
           scanf("%d", &image[i][j]);
        }

    isBreak = 0;
    for(i=0;i<n;i++){
        for(j=0;j<n;j++)
        {
           if(image[i][j]==0)
           {
              begRow = i; begCol = j; isBreak = 1; break;
           }
        }
        if( isBreak )  break;
    }

    for(i=begRow;i<n;i++)
    {
           if( i==(n-1) && image[i][begCol]==0) endRow = i;
           else if(image[i][begCol]!=0)
           {
              endRow = i-1; break;
           }
    }

    for(j=begCol;j<n;j++)
    {
           if( j==(n-1) && image[begRow][j]==0) endCol = i;
           else if(image[begRow][j]!=0)
           {
              endCol = j-1; break;
           }
    }

    area = (endRow - begRow - 1)*(endCol - begCol - 1);
    printf("%d", area);
}
int main()
{
	int n, j, i, k, aj, ai, bi, bj;
	int k1, k2, k3;
	aj = 0;
	ai = 0;
	cin>>n;
	for(j=0;j<n;j++)
	{	
		for(i=0;i<n;i++)
		{
			cin>>k;
			k1 = k2;
			k2 = k3;
			k3 = k;
			if(k3==0&&k2==0&&k1==255)
			{
				if(aj==0)
				{
				aj = j;
				ai = i-1;
				}
			}
			else if(k1==0&&k2==0&&k3==255)
			{
				bj = j;
				bi = i-1;
			}
			else
				continue;
		}
	}
	cout<<((bj-aj-1)*(bi-ai-1))<<endl;
    return 0;            
}
int main()
{
    int n;
    scanf("%d",&n);
    int sz[1000][1000];
    for(int i=0;i<n;i++)
    {
       for(int j=0;j<n;j++)  
       {
            scanf("%d",&sz[i][j]);   
       }   
    }
    
    int js=0;
    
    for(int m=0;m<n;m++)
    {
       for(int p=0;p<n;p++)  
       {
            if(sz[m][p]==0&&sz[m][p+1]==0)
            {
                                          js+=1;
                                          }
       }   
    }
    
    int a;
    a=(js-2)/2;
    
    
    int js2=0;
    
    for(int e=0;e<n;e++)
    {
       for(int r=0;r<n;r++)  
       {
            if(sz[r][e]==0&&sz[r+1][e]==0)
            {
                                          js2+=1;
                                          }
       }   
    }
    
    int b;
    b=(js2-2)/2;
    
    int s;
    s=a*b;
    
    printf("%d",s);
    
	return 0;
}
int main()
{
	int n,i,j,leftrow,leftcolumn,rightrow,rightcolumn,s;
	int a[1000][1000];
	cin >> n;
	for(i = 0 ; i < n + 2 ; i++)
	{
		for(j = 0 ; j < n + 2 ; j++)
		{
			a[i][j] = 255;
		}
	}
	for(i = 1 ; i < n + 1 ; i++)
	{
		for(j = 1 ; j < n + 1 ; j++)
		{
			cin >> a[i][j];
		}
	}
	for(i = 1 ; i < n + 1 ; i++)
	{
		for(j = 1 ; j < n + 1 ; j++)
		{
			if(a[i][j]==0 && a[i-1][j] == 255 && a[i][j-1] ==255)
			{
				leftrow = i;
				leftcolumn =j;
			}
			if(a[i][j]==0 && a[i+1][j] == 255 && a[i][j+1] ==255)
			{
				rightrow = i;
				rightcolumn =j;
			}
		}
	}
	s = (rightcolumn - leftcolumn - 1) * (rightrow - leftrow - 1);
	cout << s;
}
int main(){
	int n;
	int i,j;
	int x1,y1,x2,y2;
	int s=0;
	int a,t;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			scanf("%d",&t);
			if(t==0){
				if(s==0){
					x1=i;
				    y1=j;
				    s=1;
				}
				x2=i;
				y2=j;
			}
		}
	}
	a=(x2-x1-1)*(y2-y1-1);
	if(a<0)
		a=-a;
	printf("%d",a);
	return 0;
}
main()
{
    int s[1000][1000],i,j,a,b,c,d,n,sum=0;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    for(j=0;j<n;j++)
       {
		scanf("%d",&s[i][j]);
	  }
	for(i=0;i<n;i++)
	for(j=0;j<n;j++)
	{
	    if(s[i][j]==0) {a=i;b=j;goto A;}
	}
	A:for(i=n-1;i>=0;i--)
	for(j=n-1;j>=0;j--)
	   if(s[i][j]==0) {c=i;d=j;goto B;}
	B:sum=(c-a-1)*(d-b-1);
	printf("%d\n",sum);
}
int main()
{
  int n,x1,y1,x2,y2,i,j,f;
  int can[max][max];
	  
  scanf("%d",&n);
  f=1;
  for(i=1;i<=n;i++)
	  for(j=1;j<=n;j++)
	  {
		  scanf("%d",&can[i][j]);
		  if((can[i][j]==0)&&(f))
		  {
		      f=0;
			  x1=i;
			  y1=j;
		  }
	  }

   for(i=x1,j=y1+1;(can[i][j]==0)&&(j<=n);j++);
   j--;
   for(i=x1;(can[i][j]==0)&&(i<=n);i++);
   i--;
   x2=i;
   y2=j;
   i=(x2-x1-1)*(y2-y1-1);

   printf("%d",i);
  return 0;
}
int main(int argc, char* argv[])
{
	int n,i,j;
	int area=0;
	int a[num][num];
	int x[2];
	int y[2];
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			scanf("%d",&a[i][j]);
			if((j+1)%n==0)
				printf("\n");
		}
	}
	int flag=0;
	for(i=0;i<n&&flag==0;i++){
		for(j=0;j<n&&flag==0;j++){
			if(a[i][j]==0){
				x[0]=i;
                x[1]=j;
				flag=1;
				break;
			}
		}
	}
	for(i=n-1;i>=0&&flag==1;i--){
		for(j=n-1;j>=0&&flag==1;j--){
			if(a[i][j]==0){
				y[0]=i;
				y[1]=j;
				flag=0;
				break;
			}
		}
	}
	area=area+(y[1]-x[1]-1)*(y[0]-x[0]-1);
	printf("%d",area);
	return 0;
}
int main()
{
	int n,a=-1,b=-1,c,d,x,i,j;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&x);
			if(x==0)
			{
				c=i;
				d=j;
				if((a==-1)&&(b==-1))
				{
					a=i;b=j;
				}
			}
		}
	}
	x=(c-a-1)*(d-b-1);
	printf("%d",x);
	return 0;
}
int main()
{
	int x[1000][1000];
	int i=0,j=0;
	int n=0;
	int a1=0,b1=0,a2=0,b2=0;
	int sn=0;

	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n;j++)
		{
			scanf("%d",&x[i][j]);
		}
	}
	
	for(i=1;i<n;i++){
		for(j=1;j<n;j++)
		{
			if(x[i][j]==0&&x[i][j-1]!=0&&x[i-1][j]!=0){
			a1=i;
			b1=j;
			}
		}
	}

	for(i=0;i<n-1;i++){
		for(j=0;j<n-1;j++)
		{
			if(x[i][j]==0&&x[i][j+1]!=0&&x[i+1][j]!=0){
			a2=i;
			b2=j;
			}
		}
	}

	sn=(a2-a1-1)*(b2-b1-1);
	
	printf("%d",sn);
	return 0;                                     
}
int main()
{
	int n,i,j,a[100][100],n1,n2,n3,n4,num;
	scanf("%d",&n);
	for(i=0;i<=n-1;i++)
		for(j=0;j<=n-1;j++)
			scanf("%d",&a[i][j]);
    for(i=0;i<=n-1;i++)
		for(j=0;j<=n-1;j++)
			if(a[i][j]==0)
		   {
			   n1=i;
			   n2=j;
			  goto loop;
		   }
        loop:for(i=0;i<=n-1;i++)
		for(j=0;j<=n-1;j++)
            if(a[i][j]==0)
			{
				n3=i;
			    n4=j;
			}
			num=(n3-n1-1)*(n4-n2-1);
			printf("%d",num);
			return 0;
}
int main()
{
int n,i,j,s[1500][1500],inside=0,total=0;
cin>>n;
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
cin>>s[i][j];
}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
if((s[i][j]==0)&&(s[i][j+1]==0))
do
{
j++;
}while((j<n)&&(s[i][j]==0));
else if((s[i][j]==0)&&(s[i][j+1]!=0))
{
do
{
j++;
if(s[i][j]>0)
inside++;
}while((j<n)&&(s[i][j]!=0));
}
}
cout<<inside<<endl;

return 0;
}
int main()
{
	int p;
	int i,n,tmp,squar;
	tmp=0;
	scanf("%d",&n);
	for(i=0;i<n*n;i++)
		{
			scanf("%d",&p);
			if(p==0)
				tmp=tmp+1;
			}
	tmp=tmp/4;
	squar=(tmp-1)*(tmp-1);
	printf("%d\n",squar);
}
int main(){
	int n,i,j,k,p=0,q=0;
	int mianji;
	scanf("%d\n",&n);
	int shu[n];
	int ge[n];
	for(i=0;i<n;i++){
		k=0;
		for(j=0;j<n;j++){
			scanf("%d ",&shu[j]);
			if(shu[j]==0)
				k++;
		}
		ge[i]=k;
		if(ge[i]>p)
			p=ge[i];
		for(j=0;j<n;j++){
			if(shu[j]==0){
				q++;
				break;
			}
		}
	}
	mianji=(p-2)*(q-2);
	printf("%d\n",mianji);
	return 0;
}
int main (void)
{
    int n, i, j, start_row, start_col, end_row, end_col, row, col, value, area;
    
    scanf ("%i", &n);
    start_row = 0;
    for (i = 1; i <= n; i++)
        for (j = 1; j <= n; j++) {
            scanf ("%i", &value);
            if (!value) {
                       row = i;
                       col = j;
                       if (start_row == 0)
                          start_row = row, start_col = col;
            }
        }
    end_row = row, end_col = col;
    area = (end_row - start_row - 1) * (end_col - start_col - 1);
    printf ("%i", area);
    
    return 0;
}
int main(){
	int a[100][100];
	int n;
	int i,j;
	int x1,y1,x2,y2;
	x1=0;
	y1=0;
	x2=0;
	y2=0;
	int m;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			if(a[i][j]==0){
				x1=i;
				y1=j;
				break;
			}
			else;
		}
		if(a[x1][y1]==0){
			break;
		}
	}
	for(i=n-1;i>=0;i--){
		for(j=n-1;j>=0;j--){
			if(a[i][j]==0){
				x2=i;
				y2=j;
				break;
			}
			else;
		}
		if(a[i][j]==0){
			break;
		}
		else;
	}
     m=(y2-y1+1-2)*(x2-x1+1-2);
	 printf("\n%d",m);
	 return 0;

}
int main()
{
    int n=0,a=0,b=0,i=0,t=0,r=0;
    int row(int,int);
    int col(int,int);
    scanf("%d",&n);
    for(i=0;i<(n*n);i++){
        scanf("%d",&t);
        if(!a&&!t)a=i;
        else if(!t) b=i;
        }
    a++;b++;
    r=(col(b,n)-col(a,n)-1)*(row(b,n)-row(a,n)-1);
    printf("%d\n",r);
    return 0;
}
int col(int a,int b)
{
    return a%b;
}
int row(int a,int b)
{
    return ((a-a%b)/b+1);
}
int zhongliu(int, int, int, int);
int num[1001][1001], n;
int main()
{
	int i, j, judge = 0, sum = 0;
	cin >> n;
	for (i = 0; i < n; i++)
	{
		for (j = 0; j < n; j++)
			cin >> num[i][j];
	}
	for (i = 0; i < n; i++)
	{
		for (j = 0; j < n; j++)
		{
			if (num[i][j] == 255)
				judge = zhongliu(i, j, 0 ,1) + zhongliu(i, j, 0, -1) + zhongliu(i, j, 1, 0) + zhongliu(i, j, -1, 0);
			if (judge == 4)
			{
				sum++;
			}
			judge = 0;
		}
	}
	cout << sum;
	cin >> i;
	
	return 0;
}

int zhongliu(int x, int y, int a, int b)
{
	if (x < 0 || y < 0 || x >= n || y >= n)
		return 0;
	if (num[x][y] == 0)
		return 1;
	else
		return zhongliu(x + a, y + b, a, b);
}
void main(){
	int length,i,j,temp,start=-1,end;
	scanf("%d",&length);
	for(i=0;i<length;i++)
		for(j=0;j<length;j++){
			scanf("%d",&temp);
			if(temp==0){
				if(start==-1) start=i*length+j;
				end=i*length+j;
			}
		}
	printf("%d",(end/length-start/length-1)*(end%length-start%length-1));
}
int main(int argc, char* argv[])
{
	int n,i,j,a,b,s;
	a=4;
	int p[1000][1000];
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n-1;j++){
			scanf("%d ",&p[i][j]);
			if(p[i][j]==0){
				a++;
			}
			else a=a;
		}
		scanf("%d\n",&p[i][n-1]);
	}
	b=a/4;
	s=(b-2)*(b-2);
	printf("%d",s);
	return 0;
}
int main()
{
	int n,i,j,area,flag=1,glaf=0,a_1,a_2,b_1,b_2,term_1,term_2;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		term_2=1;
		for(j=0;j<n;j++)
		{
			term_1=term_2;
			scanf("%d",&term_2);
			if(flag)
			{
				if(!term_2)
				{
					a_1=i;
					b_1=j;
					flag=!flag;
				}
			}
			else
			{
				if(!glaf&&i>a_1&&term_1==0&&term_2==0)
				{
					a_2=i;	glaf=!glaf;
				}
				if(glaf&&term_1==0&&term_2==255)
				{
					b_2=j-1;
					goto label;
				}
			}
		}
	}
label:area=(a_2-a_1-1)*(b_2-b_1-1);
	  printf("%d\n",area);
	  return 0;
}
main()
{
      int n,i,j,first,num,fstn,counter1=0,counter2=0;
      int sum=0;
      int c[100][100]={0};
      int s[100]={0};
      int t[100]={0};
      scanf("%d",&n);
      for(i=0;i<n;i++)
      {
          for(j=0;j<n;j++)
          {   
              scanf("%d",&c[i][j]);
          }
       } 
       for(i=0;i<n;i++)
       {
          int tum1=0;
          sum=0;
          for(j=0;j<n;j++)
          {      
            sum+=c[i][j];
          }
          tum1=n-sum/255;
          s[i]=tum1;
        
       }
      
      
      for(i=0;i<n;i++)
      {
          if(s[i]!=0)
          {
              first=i+1;
              fstn=s[i];
              break;
          }
      }     
      for(i=first;s[i]!=fstn;i++)
      {
           counter1++;
      }
      for(j=0;j<n;j++)
      {
           int tum2;
           sum=0;
           for(i=0;i<n;i++)
           {
               sum+=c[i][j];
           }
           tum2=n-sum/255;
           t[j]=tum2;
      }
      for(j=0;j<n;j++)
      {
          if(t[j]!=0)
          {
              first=j+1;
              fstn=t[j];
              break;
          }
      }     
      for(j=first;t[j]!=fstn;j++)
      {
           counter2++;
      }      
      
      
      
      
      printf("%d",counter1*counter2);
}
int main()
{
	int i,j,n,num,min1=2000,min2=2000,max1=-1,max2=-1;
	int area;
	cin>>n;
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			cin>>num;
			if(num==0)
			{
				if(i<min1)
					min1=i;
				else if(i>max1)
					max1=i;
				if(j<min2)
					min2=j;
				else if(j>max2)
					max2=j;
			}
		}
	}
	area=(max1-min1-1)*(max2-min2-1);
	cout<<area<<endl;
	return 0;
}
int a[1000][1000];
int main()
{
	int n,i,j,num;
	int x1,y1,x2,y2;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	}
	for(i=1;i<n-1;i++)

	{
		for(j=1;j<n-1;j++)
		{
			if(a[i-1][j-1]==0&&a[i-1][j]==0&&a[i][j-1]==0)
			{
				x1=i;
				y1=j;
			}
			if(a[i+1][j+1]==0&&a[i+1][j]==0&&a[i][j+1]==0)
			{
				x2=i;
				y2=j;
			}	
		}
		num=(x2-x1+1)*(y2-y1+1);
	}
	printf("%d",num);
	return 0;
}
int main(){
	int i=0,j=0,n,a1,a2,b1,b2,s;
	int sz[100][100];
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			scanf("%d",&sz[i][j]);
		}
	}
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			if(sz[i][j]!=0&&sz[i][j+1]==0){
				a1=i;
				b1=j+1;
			}
			if(sz[i][j]==0&&sz[i][j+1]!=0){
				b2=j;
				i=n;
			}
		}
	}
	for(j=0;j<n;j++){
		for(i=0;i<n;i++){
			if(sz[i][j]==0&&sz[i+1][j]!=0){
		        a2=i;
				j=n;
			}
		}
	}
	s=(a2-a1-1)*(b2-b1-1);
printf("%d",s);
return 0;
	}
int main()
{
  int n,i,j,an[500][500],a,b,c,d,e=0,f=0;
  scanf("%d",&n);
  for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
    {
       scanf("%d",&an[i][j]);
    }
  }
  for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
    {
       if(an[i][j]==0)
       {
          a=i;
          b=j;
          e=1;
          break;
       }
    }
    if(e==1)
    break;
  }
  for(i=n-1;i>=0;i--)
  {
    for(j=n-1;j>=0;j--)
    {
        if(an[i][j]==0)
        {
           c=i;
           d=j;
           f=1;
           break;
        }
    }
    if(f==1)
    break;
  } 
  int s;
  s=(c-a-1)*(d-b-1);
  printf("%d",s);
  return 0;
}
int main()
{
	int area[1000][1000];
int i,j,n,i1,j1,i2,a,b,j2,J1=0,J2=0,I1=0,I2=0,GESHU;
GESHU=0;
a=1;
b=1;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&(area[i][j]));
		}
	}

	for(i1=0;i1<n;i1++)
	{
		for(j1=0;j1<n;j1++)

		
		{	if(area[i1][j1]==0&&a==1)
		{a=2;
J1=j1;
I1=i1;                   
}}
}
		
	for(i2=n-1;i2>=0;i2--)
	{
		for(j2=n-1;j2>=0;j2--)
			{if(area[i2][j2]==0&&b==1)
{J2=j2;
I2=i2;		
b=2;
}
 }
}
GESHU=(J2-J1+1)*(I2-I1+1)-2*(J2-J1+I2-I1+2)+4;
printf("%d",GESHU);
return 0;
}
main()
{
	int i,j,x1,x2,y1,y2;
	int n,t;
	int area,statue=0;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&t);
			if(t==0)
			{
				if(statue==0)
				{
					x1=i;
					y1=j;
					statue++;
				}
				x2=i;
				y2=j;
			}
		}
	}
	area=(x2-x1-1)*(y2-y1-1);
	printf("%d",area);
}
int main(int argc, char* argv[])
{
	int i,j,C[1000][1000];
	int n,s;
	int a,b;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&(C[i][j]));
		}
	}
	for(i=0;i<n;i++)
	{
		int sum=0;
		for(j=0;j<n;j++)
		{
			if(C[i][j]==0)
				sum = sum +1;
		
		if(sum>2)
			a=sum;
		}
	}
	for(j=0;j<n;j++)
	{
		int um=0;
		for(i=0;i<n;i++)
		{
			if(C[i][j]==0)
			um = um +1;
		
		if(um>2)
			b=um;
		}
	}

	s=(a-2)*(b-2);
	printf("%d\n",s);
	return 0;
}
int main()
{
	int n;
	scanf("%d",&n);
	int sz[ROW][COL];
	int x1,y1,x2,y2;
	for(int row=1;row<=n;row++)
	{
		for(int col=1;col<=n;col++)
		{
			scanf("%d",&sz[row][col]);
		}
	}
	for(int row=1;row<=n;row++)
	{
		for(int col=1;col<=n;col++)
		{
			if(sz[row][col]==0)
			{
				x1=row;
				y1=col;
			}
		}
	}
	for(int row=n;row>0;row--)
	{
		for(int col=n;col>0;col--)
		{
			if(sz[row][col]==0)
			{
				x2=row;
				y2=col;
			}
		}
	}
	int s;
	s=(x2-x1+1)*(y2-y1+1);
	printf("%d",s);
	return 0;
}
int main()
{
	int n,b[1000][1000],i,k,s;
	int x1,x2,y1,y2;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(k=0;k<n;k++)
		{
			scanf("%d",&(b[i][k]));
		}
	}
	for(i=0;i<n;i++)
	{
		for(k=0;k<n;k++)
		{
			if(b[i][k]==0&&b[i+1][k]==b[i][k]&&b[i][k+1]==b[i][k])
			{
				x1=i;
				y1=k;
			}
			if(b[i][k]==0&&b[i-1][k]==b[i][k]&&b[i][k-1]==b[i][k])
			{
				x2=i;
				y2=k;
			}
		}
	}
	s=(x2-x1-1)*(y2-y1-1);
	printf("%d",s);
	return 0;
}
int a[1001][1001];

int main()	{
	int n;
	cin >> n;
	int i, j;
	for(i = 0; i < n; ++i)	{
		for(j = 0; j < n; ++j)	{
			cin >> a[i][j];
		}
	}
	int sx, sy, ex, ey, flag = 0;
	for(i = 0; i < n; ++i)	{
		for(j = 0; j < n; ++j)	{
			if(a[i][j] == 0 && flag == 0)	{
				sx = i;
				sy = j;
				flag = 1;
			}
			else if(a[i][j] == 0 && flag == 1)	{
				ex = i;
				ey = j;
			}
		}
	}
	sx += 1; sy += 1; ex-= 1; ey -= 1;
	int sum = (ex-sx+1)*(ey-sy+1);
	cout << sum << endl;
	return 0;
}
int main()
{
	int n,a[1000][1000];
	int i,j,m=0,i1,i2,j1,j2;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			scanf("%d",&a[i][j]);
			if(a[i][j]==0) m++,i2=i,j2=j;
			if(m==1) i1=i,j1=j;
		}
	}
	int num=(i2-i1-1)*(j2-j1-1);
	printf("%d",num);
	return 0;
}
int main(int argc, char* argv[])
{
	int i,j,n,s,b=0,c=0,d=0,e=0;
	scanf("%d",&n);
	int a[100][100];
	for (i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	for (i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			if (a[i][j]==0)
			{
				b=j;
				c=i;
				goto loop;
			}
		}
	}loop:
	for(i=n-1;i>=0;i--)
	{
		for(j=n-1;j>=0;j--)
		{
			if (a[i][j]==0)
			{
				d=j;
				e=i;
				goto end;
			}
		}
	}end:
	s=(e-c-1)*(d-b-1);
	printf("%d\n",s);
	return 0;
}
int  main()
{int n,i,j,a[500][500],x=0,y=0;
 scanf("%d",&n);
 for(i=0;i<n;i++)
 {
  for(j=0;j<n;j++)
   scanf("%d",&a[i][j]);
 }

for(i=0;i<n;i++)
 {
  for(j=0;j<n;j++)
  {
   if(a[i][j]==0)
    x++;
  }
  if(x!=0)
   break;
 }
    for(j=0;j<n;j++)
 {
  for(i=0;i<n;i++)
  {
   if(a[i][j]==0)
    y++;
  }
  if(y!=0)
   break;
 }
 printf("%d\n",(x-2)*(y-2));


return 0;


}
int zl[1000][1000];
int main(){
    int i,j,n,a,b,s;
	scanf("%d",&n);
    for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			scanf("%d",&zl[i][j]);
		}
	}
    for(i=0;i<n-1;i++){
		for(j=0;j<n-1;j++){
			if(zl[i][j]==0){
	            break;
			}
		 }
	 if(zl[i][j]==0){
				
	            break;
			} 
}
a=i;
b=j; 
	for(i=n-1;i>0;i--){
		 for(j=n-1;j>0;j--){
		    if(zl[i][j]==0){
			 break;
			}
		}
	if(zl[i][j]==0){
			 break;
			}
}
    s=(i-a-1)*(j-b-1);
	printf("%d\n",s);
	return 0;
}
int abs(int p)
{
  if(p>0) return p;
  else return(-p);
}
int main()
{
  long first,last,i,j;
  int n,a,check=0,sc,sr,ec,er;
  scanf("%d",&n);
  for(i=0;i<n*n;i++)
  {
    scanf("%d",&a);
    if((a==0)&&(check==0)) {first=i;check=1;}
    if(a==0) last=i;
  }
  sc=(first/n);
  sr=(first%n);
  ec=(last/n);
  er=(last%n);
  printf("%d",(abs(sc-ec)-1)*(abs(sr-er)-1));
  return 0;
}
int main(){
	int a=0,b=0,i=0,j=0,p=0,q=0,m=0,n=0,x1=0,y=0;
	scanf("%d",&x1);
	y=0;
	for (i=1;i<=x1;i++){
		for (j=1;j<=x1;j++){
			scanf("%d",&a);
			if ((a==0)&&(y==0)){
				p=i;
				q=j;
				y=1;
			}
			else if (a==0){
				m=i;
				n=j;
			}
		}
	}
	b=(m-p-1)*(n-q-1);
	printf("%d",b);
	return 0;
}
int main(){
int Row=100,Col=100;
int sz[Row][Col];
int n;
int row1;int row2;int i;
int col1;int col2;int k;
scanf("%d",&n);
for(i=0;i<n;i++){
for(k=0;k<n;k++){
scanf("%d",&sz[i][k]);}}
int judge=0;
for(i=0;judge==0&&i<n;i++){
for(k=0;judge==0&&k<n;k++){
if(sz[i][k]==0){
judge=1;

row1=i;

col1=k;}}}
for(i=n-1;judge==1&&i>0;i--){
for(k=n-1;judge==1&&k>0;k--){
if(sz[i][k]==0){

row2=i;

col2=k;
judge=0;}}}
int s;
s=(row2-row1-1)*(col2-col1-1);
printf("%d",s);
return 0;
}
int main()
{
    int an[100][100],i,j,n,s,a,b,flag=0;
    scanf("%d",&n);

    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
        scanf("%d",&an[i][j]);
        }
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            if(an[i][j]==0)
            {
               flag=1;
		break; 
            }
        }
    if(flag==1)
            {
                break;
            }

}
flag=0;
    for(a=n-1;a>=0;a--)
    {
        for(b=n-1;b>=0;b--)
        {
            if(an[a][b]==0)
            {
		flag=1;
                break;
            }
        }
if(flag==1)
            {
                break;
            }
}

    s=(b-j-1)*(a-i-1);
    printf("%d",s);
    return 0;
}
int main()
{
	int a,b=0,c=0,d,n,i,j,e;
	scanf("%d\n",&n);
	for(i=1;i<=n;i++)
	{
	if(c>2)
	e=c;
	c=0;
		
		for(j=1;j<=n;j++)
	{scanf("%d",&a);
	if(a==0)
	{c=c+1;
		continue;}
	b=b+1;


	}
	}
	d=((n*n-b)-2*e)/2*(e-2);
	printf("%d",d);
	return 0;
	}
int main()
{
int i,j,n,k,a=0,b=0,c=0,d=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++) {
scanf("%d",&k);
if(!a&&!k) {a=i;b=j;}
if(!k) {c=i;d=j;}
}
printf("%d",(c-a-1)*(d-b-1));
}
int main()
{
	int n;
	scanf("%d",&n);

	int sz[100][100];

	for(int row=0;row<n;row++){
		for(int col=0;col<n;col++){
			scanf("%d",&sz[row][col]);
		}
	}

	int a1=100,b1=100,a2=0,b2=0;

	for(int r=0;r<n;r++){
		for(int c=0;c<n;c++){
			if(sz[r][c]==0){
				a1=r;
				b1=c;
				break;
			}
		}
		if(a1!=100||b1!=100){
			break;
		}
	}

	for(int rr=n-1;rr>=0;rr--){
		for(int cc=n-1;cc>=0;cc--){
			if(sz[rr][cc]==0){
				a2=rr;
				b2=cc;
				break;
			}
		}
		if(a2!=0||b2!=0){
			break;
		}
	}

	int s;
	s=(a2-a1-1)*(b2-b1-1);

	printf("%d",s);

	return 0;
}
int m[1000][1000];
int main()
{
	int a,b,c,d,f,i,j,e=0,n;
    scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&m[i][j]);
		}
		printf("\n");
	}
    for(i=0;i<n;i++)
	{
	    for(j=0;j<n;j++)
		{
			if(m[i][j]==0)
			{
				a=i;
				b=j;
				e=1;
				break;
			}
		  
		}
		if(e==1)
		{
			break;
		}
	}
	for(j=b;j<n;j++)
	{
		if(m[a][j]!=0)
		{
			c=j-1;
			break;
		}
	}
	for(i=a;i<n;i++)
	{
		if(m[i][b]!=0)
		{
			d=i-1;
			break;
		}
	}
    f=(c-b-1)*(d-a-1);
    printf("%d",f);
	return 0;
}
int main()
{
int x,y,z,w;
int n,i,j,t,s,tz=0;
scanf("%d",&n);
for(i=0;i<n;i++)
  for(j=0;j<n;j++)
     {scanf("%d",&t);
             if(t==0&&tz==0) {tz++;x=i;y=j;}
         if (t==0){z=i;w=j;}
     }  
                           printf("%d",(z-x-1)*(w-y-1));                       
}
int sz[1000][1000];
int main()
{
int n,i,j,a,b,c,d,e=0,h=0;
scanf("%d",&n);
for(i=0;i<n;i++){
	for(j=0;j<n;j++){
		scanf("%d",&(sz[i][j]));
	}
}
for(i=0;i<n;i++){
	for(j=0;j<n;j++){
		if(sz[i][j]==0)	{		
        a=i;
		b=j;
		h=1;
	}
		if(h==1)
			break;
}
	if(h==1)
    break;
}
for(i=0;i<n;i++){
	for(j=0;j<n;j++){
		if(sz[i][j]==0){
			c=i;
		d=j;
		}
	}
}
e=(c-a-1)*(d-b-1);
printf("%d",e);
return 0;
}
int main()
{
	int n,a[100][2000],i,j,h,s=0,l[100],S;
		scanf("%d",&n);
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
{scanf("%d",&a[i][j]);}
}
for(i=0;i<n;i++)
{l[i]=0;
	for(j=0;j<n;j++)
{
		if(a[i][j]==0)
	{l[i]++;}
}}
for(i=0;i<n;i++)
{if(l[i]!=0)
{s++;}
if(l[i]!=0&&l[i]!=2)
{h=l[i];}
}
S=s*h-2*h-2*s+4;
printf("%d",S);

return 0;
}
int main()
{
	int a[100][100],b[100]={0};
	int i,j,n,sum=0,line=0;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=n;j++)
		{
			scanf("%d",&a[i][j]);
			if(a[i][j]==0)
			b[i]++;
		}
        if(b[i]>0)
			line++;
		if(b[i]>sum)
			sum=b[i];
	}
	int num=sum*line-2*line-2*sum+4;
	printf("%d",num);
	return 0;
}
int main(){
	int tumour[256][256],n,i,j,x1=-1,y1,x2=-1,y2,s;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			scanf("%d",&tumour[i][j]);
		}
	}
	for(i=0;i<n;i++){
		for(j=0;j<n;j++){
			if(tumour[i][j])
				continue;
			else{
			x1=i;
			y1=j;
			break;
			}
		}
		if(x1>=0)
		break;
	}
	for(i=n-1;i>=0;i--){
		for(j=n-1;j>=0;j--){
			if(tumour[i][j])
				continue;
			else{
			x2=i;
			y2=j;
			break;
			}
		}
		if(x2>=0)
		break;
	}
	s=(x2-x1-1)*(y2-y1-1);
	printf("%d\n",s);
	return 0;
}
int main()
{
int t,N[1000][1000],i,j,n,m,a=0,b=0,s;
scanf("%d",&t);
for(i=0;i<t;i++)
{
  for(j=0;j<t;j++)
  {
  scanf("%d",&N[i][j]);
  }
}
for(i=0;i<t;i++)
{
  for(j=0;j<t;j++)
  {
   if(N[i][j]==0)
   {
   n=i;m=j;
   }
  }
}
for(i=n,j=m;j<t;j--)
{
 if(N[i][j]==0)
a++;
 else break;
}
for(j=m,i=n;i<t;i--)
{
if(N[i][j]==0)
b++;
else break;
}
s=(a-2)*(b-2);
printf("%d",s);
return 0;
}
int main()
{
 int i,j,n,x,a,b=0,c=0;
 scanf("%d",&n); 
 for(i=1;i<=n;i++)
 {a=0;
	 for(j=1;j<=n;j++)
	 {scanf("%d",&x);
      if(x==0)
      {b=b+1;
	  a=a+1;}}
    if(a==2)
	  c=c+1;}
printf("%d",(((b-2*c)-4)/2)*c);
return 0;
}