#include <bits/stdc++.h>
using namespace std;
int N, K;
char A[1000010];
int poz_min[1000010], poz_max[1000010];
long long sol;
int main() {
  scanf("%d\n", &K);
  scanf("%s\n", A + 1);
  N = strlen(A + 1);
  int i, j, p, q, sum = 0;
  for (i = 1; i <= N; i++) {
    poz_min[i] = N + 100;
    poz_max[i] = -1;
  }
  if (K == 0) {
    A[0] = A[N + 1] = '1';
    int ret = 0;
    for (i = 0; i <= N + 1; i++) {
      if (A[i] == '0') {
        ret++;
      } else {
        sol += (long long)ret * (ret + 1) / 2;
        ret = 0;
      }
    }
    cout << sol << '\n';
    return 0;
  }
  for (i = 1; i <= N; i++) {
    sum = sum + (A[i] - '0');
    if (sum >= K) {
      p = poz_min[sum - K];
      q = poz_max[sum - K];
      sol += (q - p + 1);
    }
    poz_min[sum] = min(poz_min[sum], i);
    poz_max[sum] = max(poz_max[sum], i);
  }
  cout << sol << '\n';
  return 0;
}
