n, m = map(int, input().split())
s = input()
ls = [[] for _ in range(6)]
for i in range(1, n-1):
  if s[i-1] != s[i] == "-":
    flg = 0
    flg += s[i-1] == "x"
    cnt = 0
  if s[i] == "-":
    cnt += 1
  if "-" == s[i] != s[i+1]:
    flg += s[i+1] == "x"
    ls[flg*2+cnt%2].append(cnt)
for i in range(4):
  ls[i].sort(reverse = True)
for i in range(4, 6):
  ls[i].sort()
ans = s.count("o")
rem = 0
while m or ls[1]:
  if ls[1]:
    x = ls[1].pop()
    if x // 2 > m:
      ans += m * 2
      m = 0
    else:
      ans += x
      m -= x // 2
  elif ls[0]:
    x = ls[0].pop()
    if x // 2 > m:
      ans += m * 2
      m = 0
    else:
      ans += x
      m -= x // 2
  elif ls[2]:
    x = ls[2].pop()
    if x // 2 > m:
      ans += m * 2
      m = 0
    else:
      ans += x
      m -= x // 2
  elif ls[3]:
    x = ls[3].pop()
    if x // 2 > m:
      ans += m * 2
      m = 0
    else:
      ans += x - 1
      m -= x // 2
      rem += 1
  elif ls[5]:
    x = ls[5].pop()
    if x > 1:
      ans += 1
      m -= 1
    else:
      rem += 1
    if x // 2 > m:
      ans += m * 2
      m = 0
    else:
      ans += x - 1
      m -= x // 2
  elif ls[4]:
    x = ls[4].pop()
    ans += 1
    m -= 1
    if (x - 1) // 2 > m:
      ans += m * 2
      m = 0
    else:
      ans += x - 2
      m -= (x - 2) // 2
      rem += 1
  else:
    break
ans += min(rem, m)
print(ans)