#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main()
{
    ll n,x; cin>>n>>x;
    string s; cin>>s;
    for(ll i=0;i<n;i++)
    {
        if(s[i]=='x') x--;
        else x++;
        if(x<0) x=0;
    }
    cout<<x<<endl;
}

#define _GLIBCXX_DEBUG
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

#define REP(i, n) for (int i = 0; i < (int)(n); i++)
#define REPR(i, n) for (int i = (n); i >= 0; i--)
#define FOR(i, m, n) for (int i = (m); i < (int)(n); i++)
#define INF 1000000000
//配列 vector<型> 配列名(要素数, 初期値);
//二次元配列 vector<vector<型>> 配列名(要素数縦,vector<int>(要素数横, 初期値))
//配列のサイズ(二次元縦) 配列名.size(), 二次元横 配列名[0].size()
// 1秒間のforループは10^8くらい

//最大公約数
int gcd(int a, int b) {
  if (a % b == 0) {
    return (b);
  } else {
    return (gcd(b, a % b));
  }
}

//最小公倍数
int lcm(int a, int b) { return a * b / gcd(a, b); }

int main() {
  int N, X;
  string S;
  cin >> N >> X >> S;

  REP(i, N) {
    if (S[i] == 'o') {
      X++;
    } else {
      if (X != 0) X--;
    }
  }
  cout << X << endl;
}