#include <bits/stdc++.h>

using namespace std;

int p[2000][2000];
int r = 0;
int b[1000000];
void pravljenjePravougaonika(int l, int m, int s, int br, int n, int k)
{
	int w = 1;
	int h = 1;
	int c = 1;
	bool b1,b2,b3,b4;
	b1 = true;
	b2 = true;
	b3 = true;
	b4 = true;
	while(c<br && ((b1==true && b2==true) && (b3==true && b4==true)))
	{
		
		int c1 = c;
		
		for(int g=h;g>0;g--)
		{
		
			if(l+1 <= n && p[l+1][m] == s)
			{
				c1++;
				l += 1;
			}
			else
			{
				b1 = false;
				break;
			}
		}
		if(b1==true)
		{
			w++;
			c = c1;
		}
		c1 = c;
		for(int g=w;g>0;g--)
		{
			if(m+1 <= n && p[l][m+1] == s)
			{
				c1++;
				m += 1;
			}
			else
			{
				b2 = false;
				break;
			}
		}
		if(b2==true)
		{
			h++;
			c = c1;
		}
		c1 = c;
		for(int g=h;g>0;g--)
		{
			if(l-1 >=0 && p[l-1][m] == s)
			{
				c1++;
				l -= 1;
			}
			else
			{
				b3 = false;
				break;
			}
		}
		if(b3==true)
		{
			w++;
			c = c1;
		}
		c1 = c;
		for(int g=w;g>0;g--)
		{
			if(m-1 >= 0 && p[l][m-1] == s)
			{
				c1++;
				m -= 1;
			}
			else
			{
				b4 = false;
				break;
			}
		}
		if(b4==true)
		{
			h++;
			c = c1;
		}
	}
	if(c == br)
	{
		r++;
		b[s] = 0;
		return;
	}
}
int main()
{
	int n,k;
	
	cin>>n>>k;
	
	
	
	for(int i=0;i<k;i++)
	{
		b[i]=0;
	}
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			cin>>p[i][j];
			b[p[i][j]]++;
		}
	}
	
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			if(b[p[i][j]]==1)
			{
				r++;
				
			}
			if(b[p[i][j]]>1)
			{
				pravljenjePravougaonika(i, j, p[i][j], b[p[i][j]], n, k);
			}
		}
	}
	cout<<r;
}