#include<bits/stdc++.h>
using namespace std;
map<int,int> mp;
map<int, bool> r[1000005];
map<int,bool> c[1000005];
int main(){
    int n, k;
    scanf("%d%d", &n, &k);
    for(int i=0;i<n;++i){
        for(int j=0; j<n; ++j){
            int x;
            scanf("%d", &x);
            mp[x]++;
            r[x][i]=true;
            c[x][j]=true;
        }
    }
    int sol=0;
    for(int i=1; i<=k; ++i){
        if(mp[i]==0) continue;
        int a=0, b=0;
        bool s=false, f=false;
        for(int j=0; j<n;++j){
            if(r[i][j]){
                    a++;
                    s=true;
            }
            else if(s) f=true;
            if(r[i][j] && f){
                a=0;
                break;
            }
        }
        s=false;f=false;
        for(int j=0; j<n;++j){
            if(c[i][j]){
                    b++;
                    s=true;
            }
            else if(s) f=true;
            if(c[i][j] && f){
                b=0;
                break;
            }
        }
        if(a*b==mp[i]) sol++;
    }
    printf("%d", sol);
    return 0;
}