#include <iostream>
using namespace std;
int main ()
{
int n, k;
cin>>n>>k;
char arr[100005];
for (int i=1; i<=n; i++)
{
cin>>arr[i];
}
int diff_pair=0;
int same_pair=0;
for (int i=1, j=n; i<=n, j>=1; i++, j--)
{
if (i>=j) break;
if (arr[i]!=arr[j]) diff_pair++;
else if (arr[i]==arr[j]) same_pair++;
}
if (k>n) cout<<"No";
else if (k==n) cout<<"Yes";
else
{
int kt=0;
for (int i=0; i<=diff_pair; i++)
{
int change=1*i+(diff_pair-i)*2;
if (change==k)
{
kt=1;
break;
}
else
{
if (change<k)
{
int Excess = k-change;
if (n%2!=0)
{
int change_max = same_pair*2;
if (Excess<=change_max+1)
{
kt=1;
break;
}
}
else
{
int change_max = same_pair*2;
if (Excess<=change_max && Excess%2==0)
{
kt=1;
break;
}
}
}
}
}
if (kt==1) cout<<"Yes";
else cout<<"No";
}
return 0;
}