#include <bits/stdc++.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int n,m,i,j,mem,Min=INT_MAX;
int a[100000];
bool desno[100000];
int b[100000];

int suma()
{
	int s=0;
	for(int i=0;i<m;i++) s+=b[i]*(n-b[i]);
	return s;
}

/*void print()
{
	cout<<"NOVI MINIMUM : "<<Min<<endl;
	for(i=0;i<n;i++) 
	{
		if(desno[i])
		{
			for(j=0;j<a[i];j++) cout<<".";
			for(j=a[i];j<m;j++) cout<<"#";
		}
		else
		{
			for(j=0;j<a[i];j++) cout<<"#";
			for(j=a[i];j<m;j++) cout<<".";
		}
		cout<<endl;
	}
	cout<<endl;
}*/

void ofarbaj(int k)
{
	if(!Min) return ;
	int l;
	if(k==n)
	{
		mem=suma();
		if(mem<Min)
		{
			Min=mem;
			//print();
		}
		return ;
	}
	for(l=0;l<a[k];l++) b[l]++;
	ofarbaj(k+1);
	for(l=0;l<a[k];l++) b[l]--;
	desno[k]=true;
	for(l=a[k];l<m;l++) b[l]++;
	ofarbaj(k+1);
	desno[k]=false;
	for(l=a[k];l<m;l++) b[l]--;
}

int main(int argc, char** argv) {
	cin>>n>>m;
	for(i=0;i<n;i++) cin>>a[i];
	ofarbaj(0);
	cout<<Min<<endl;
}