#include <bits/stdc++.h>
using namespace std;
#define faster ios_base::sync_with_stdio(false); cin.tie(NULL)
#define Bit(mask , i) ((mask >> i) & 1)
#define fi first
#define se second
#define _LOG2(nl) 31 - __builtin_clz(nl)
#define c_bit(nl) __builtin_popcount(nl)
#define ii pair<int , pair<int , int>>
#define db double
#define onBit(mask , i) (mask | (1 << i))
#define offBit(mask , i) (mask & (~(1 << i)))
const long long MOD = 1e9 + 7;
const long long INF = 1e14;
const int N = 1e3 + 7;
map<long long , int> mp;
long long pre[N][N];
long long k;
string s;
int n;
void inp(){
cin >> k;
cin >> s;
n = s.size();
s = "L" + s;
for (int i = 1 ; i <= n ; ++i){
for (int j = 1 ; j <= n ; ++j){
long long tmp = (s[i] - '0') * (s[j] - '0');
pre[i][j] = tmp + pre[i - 1][j] + pre[i][j - 1] - pre[i - 1][j - 1];
}
}
}
void solve(){
int res = 0;
for (int i = 1 ; i <= n ; ++i){
for (int j = 1 ; j <= n ; ++j){
++mp[pre[i - 1][j - 1] - pre[i][j - 1] - pre[i - 1][j]];
res += mp[k - pre[i][j]];
}
}
cout << res;
}
int main(){
// freopen("xhmax.inp" , "r" , stdin);
// freopen("xhmax.out" , "w" , stdout);
faster;
inp();
solve();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgZmFzdGVyIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKE5VTEwpCiNkZWZpbmUgQml0KG1hc2sgLCBpKSAoKG1hc2sgPj4gaSkgJiAxKQojZGVmaW5lIGZpIGZpcnN0CiNkZWZpbmUgc2Ugc2Vjb25kCiNkZWZpbmUgX0xPRzIobmwpIDMxIC0gX19idWlsdGluX2NseihubCkKI2RlZmluZSBjX2JpdChubCkgX19idWlsdGluX3BvcGNvdW50KG5sKQojZGVmaW5lIGlpIHBhaXI8aW50ICwgcGFpcjxpbnQgLCBpbnQ+PgojZGVmaW5lIGRiIGRvdWJsZQojZGVmaW5lIG9uQml0KG1hc2sgLCBpKSAobWFzayB8ICgxIDw8IGkpKQojZGVmaW5lIG9mZkJpdChtYXNrICwgaSkgKG1hc2sgJiAofigxIDw8IGkpKSkKCmNvbnN0IGxvbmcgbG9uZyBNT0QgPSAxZTkgKyA3Owpjb25zdCBsb25nIGxvbmcgSU5GID0gMWUxNDsKY29uc3QgaW50IE4gPSAxZTMgKyA3OwptYXA8bG9uZyBsb25nICwgaW50PiBtcDsKbG9uZyBsb25nIHByZVtOXVtOXTsKbG9uZyBsb25nIGs7CnN0cmluZyBzOwppbnQgbjsKCnZvaWQgaW5wKCl7CiAgICBjaW4gPj4gazsKICAgIGNpbiA+PiBzOwogICAgbiA9IHMuc2l6ZSgpOwogICAgcyA9ICJMIiArIHM7CiAgICBmb3IgKGludCBpID0gMSA7IGkgPD0gbiA7ICsraSl7CiAgICAgICAgZm9yIChpbnQgaiA9IDEgOyBqIDw9IG4gOyArK2opewogICAgICAgICAgICBsb25nIGxvbmcgdG1wID0gKHNbaV0gLSAnMCcpICogKHNbal0gLSAnMCcpOwogICAgICAgICAgICBwcmVbaV1bal0gPSB0bXAgKyBwcmVbaSAtIDFdW2pdICsgcHJlW2ldW2ogLSAxXSAtIHByZVtpIC0gMV1baiAtIDFdOwogICAgICAgIH0KICAgIH0KfQoKdm9pZCBzb2x2ZSgpewogICAgaW50IHJlcyA9IDA7CiAgICBmb3IgKGludCBpID0gMSA7IGkgPD0gbiA7ICsraSl7CiAgICAgICAgZm9yIChpbnQgaiA9IDEgOyBqIDw9IG4gOyArK2opewogICAgICAgICAgICArK21wW3ByZVtpIC0gMV1baiAtIDFdIC0gcHJlW2ldW2ogLSAxXSAtIHByZVtpIC0gMV1bal1dOwogICAgICAgICAgICByZXMgKz0gbXBbayAtIHByZVtpXVtqXV07CiAgICAgICAgfQogICAgfQogICAgY291dCA8PCByZXM7Cn0KCmludCBtYWluKCl7Ci8vICAgIGZyZW9wZW4oInhobWF4LmlucCIgLCAiciIgLCBzdGRpbik7Ci8vICAgIGZyZW9wZW4oInhobWF4Lm91dCIgLCAidyIgLCBzdGRvdXQpOwogICAgZmFzdGVyOwogICAgaW5wKCk7CiAgICBzb2x2ZSgpOwogICAgcmV0dXJuIDA7Cn0K