//412_4
#include <iostream>
#include <algorithm>
#include <stdio.h>

#define min(a, b) (((a)<(b))?(a):(b))
#define max(a, b) (((a)>(b))?(a):(b))

using namespace std;

const int N = 3e3+5;
const int T = N*2;

int id[N];
int v[N],a[111][111];
int main()
{
    freopen("TOWER.IN","r", stdin);
    //freopen("input.txt", "r", stdin);



    int tt,H,L,d,x,ans,l,j,k;
    scanf("%d",&tt);
    while(tt--){
        scanf("%d%d",&H,&L);
        d=0;
        ans=0;
        memset(id,0,sizeof(id));
        for(int i=0;i<H;++i)
            for(int j=0;j<L;++j)
            {
                scanf("%d",&x);
                a[i][j]=x;
                if (x!=-1)
                {
                    v[x] = i;
                    d = max(x,d);
                }
            }
        /*for(int i=1;i<=d;++i) printf("%d %d\n",i,v[i]);
        for(int i=0;i<H;++i)
        {
            for(int j=0;j<L;++j)
                printf("%d ",a[i][j]);
                puts("");
        }*/
        for(int i=0;i<d;++i)
        {
            l = v[i+1];
            k = id[l];
            j=0;
          //  printf("%d %d %d",i,l,k);
            while (a[l][k]!=i+1)
            {
             //   printf("!%d %d\n",a[l][k],k);
                j++;
                k++;
           //     scanf("%d",&x);
                if (k>=L) k-=L;
            }
          //  puts("ok");
            id[l] = k;
            j = min(j,L-j);
            ans+=j*5+l*20;
        }
        printf("%d\n",ans);
    }

    return 0;
}

