#include<bits/stdc++.h>
using namespace std;
int sum[100001][21],num[21],n,m,vis[21],f[(1<<20)-1];
int tail[(1<<20)-1];
int main(){
memset(f,127,sizeof(f));
cin>>n>>m;
for(int i=1;i<=n;++i){
int x;
cin>>x;
++num[x];
for(int j=1;j<=m;++j){
sum[i][j]=sum[i-1][j];
if(x==j)continue;
++sum[i][j];
}
}
for(int i=0;i<=(1<<m)-1;++i){
int t=0;
for(int j=0;j<=m-1;++j){
if(i&(1<<j)){
t+=num[j+1];
}
}
tail[i]=t;
}
f[0]=0;
for(int i=0;i<=(1<<m)-1;++i){
for(int j=0;j<=m-1;++j){
if(!(i&(1<<j)))continue;
int x=i^(1<<j),l=tail[x],r=tail[i];
f[i]=min(f[i],f[x]+sum[r][j+1]-sum[l][j+1]);
}
}
cout<<f[(1<<m)-1]<<endl;
return 0;
}