#include <bits/stdc++.h>
using namespace std;
char n, dp[101][51][101][101][2];
string a;
int f(int x, int hak, int ileri, int geri, int yon) {
  int ans = 0;
  if (x == n and hak == 0) return abs(ileri - geri);
  if (hak < 0 or x == n) return 0;
  if (dp[x][hak][ileri][geri][yon]) return dp[x][hak][ileri][geri][yon];
  if (a[x] == 'F') {
    if (yon == 1)
      ans = f(x + 1, hak, ileri + 1, geri, yon);
    else
      ans = f(x + 1, hak, ileri, geri + 1, yon);
    ans = max(ans, f(x + 1, hak - 1, ileri, geri, 1 - yon));
    ans = max(ans, f(x, hak - 2, ileri, geri, yon));
  } else {
    ans = f(x + 1, hak, ileri, geri, 1 - yon);
    if (yon == 1)
      ans = max(ans, f(x + 1, hak - 1, ileri + 1, geri, yon));
    else
      ans = max(ans, f(x + 1, hak - 1, ileri, geri + 1, yon));
    ans = max(ans, f(x, hak - 2, ileri, geri, yon));
  }
  return dp[x][hak][ileri][geri][yon] = ans;
}
int main() {
  int hak;
  cin >> a >> hak;
  n = a.size();
  cout << f(0, hak, 0, 0, 1) << endl;
  return 0;
}
