#include <bits/stdc++.h>

using namespace std;

long long obojena[10005];
long long bojenja[10005];
int n,m;
vector<pair<long long,int>> parovi;

int main() 
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cerr.tie(0);
    
    cin >> n >> m;
    
    parovi.push_back({-1,0});
    
    for(int i=1;i<=n;i++)
    {
        cin >> bojenja[i];
        parovi.push_back({min(bojenja[i],m-bojenja[i]),i});
    }
    
    sort(parovi.begin(),parovi.end());
    
    if(parovi[1].first==bojenja[parovi[1].second])
    {
        for(int i=1;i<=bojenja[parovi[1].second];i++)
        {
            obojena[i]++;
        }
    }
    else
    {
        for(int i=bojenja[parovi[1].second]+1;i<=n;i++)
        {
            obojena[i]++;
        }
    }
    
    for(int i=2;i<=n;i++)
    {
        int balansDesno=0;
        int balansLevo=0;
        int granica=bojenja[parovi[i].second];
        
        if(n%2==0)
        {
           for(int i=1;i<=granica;i++)
           {
               if(obojena[i]<n/2)
               {
                   balansLevo++;
               }
               else
               {
                   balansLevo--;
               }
           }   
           
           for(int i=granica+1;i<=m;i++)
           {
                if(obojena[i]<n/2)
               {
                   balansDesno++;
               }
               else
               {
                   balansDesno--;
               }
           }
           
        }
        else
        {
            for(int i=1;i<=granica;i++)
           {
               if(obojena[i]<n/2)
               {
                   balansLevo++;
               }
               else if(obojena[i]>=n/2+1)
               {
                   balansLevo--;
               }
           }   
           
           for(int i=granica+1;i<=m;i++)
           {
                if(obojena[i]<n/2)
               {
                   balansDesno++;
               }
               else if(obojena[i]>=n/2+1)
               {
                   balansDesno--;
               }
           }
        }
        
        if(balansLevo<balansDesno)
        {
            for(int i=1;i<=granica;i++)
            {
                obojena[i]++;
            }
        }
        else
        {
             for(int i=granica+1;i<=m;i++)
            {
                obojena[i]++;
            }
        }
    }
    
    long long sol=0;
    
    
    for(int i=1;i<=m;i++)
    {
        sol+=obojena[i]*(n-obojena[i]);
    }
    
    cout << sol;
    
    return 0;
}