#include <bits/stdc++.h>
using namespace std;
long long Konflikt(int N,int M,int *A,int *B){
    if ( N > 500) return 0;
    vector<int> a(N+1);
    vector<int> b(N+1);
    for ( int i =1 ; i <= N ; i++)
    {
        a[i] = A[i];
        b[i] = B[i];
    }
    sort(a.begin(),a.end());
    sort(b.begin(),b.end());
    long long res = LONG_MAX;
    for (int x = 0 ; x < M ; x++)
    {
        for ( int i = 0 ; i <= N ; i++)
        {
            long long d = 0;
            for ( int j = 1 ; j <= N ; j++)
            {
                int novom = (a[j]+x)%M;
                if ( j <= i)
                {
                    d += min( abs(novom - b[N+j-i]), M - abs(novom - b[N+j-i]));
                }
                else
                {
                    d += min ( abs (novom - b[j-i]),M -abs (novom - b[j-i]));
                }
            }
            res = min(res,d);
        }
    }
    return res;
}