void find(int pos){
        if(pos==n){
            int count=0;
            for(int i=1; i<n; i++){
                for(int j=0; j<i; j++){
                    if(d1[i][j]+d2[p[i]][p[j]]+2==k) count++;
                }
            }
            if(result<count) result=count;
            return;
        }
        for(int i=0; i<n; i++){
            if(!v[i]){
                v[i] = true;
                p[pos] = i;
                find(pos+1);
                v[i] = false;
            }
        }
    }