#include<bits/stdc++.h>
using namespace std;
const int maxn = 10086 + 5;
long long mn[maxn];
int num[maxn];
long long N, C;
int len1 = 0;
int ans = 0;
bool find(string m, string n)
{
int a[maxn] = {0}, b[maxn] = {0};
int c[maxn] = {0};
if(m == n and C != 0)
return false;
if((n > m && n.size() == m.size()) || n.size() > m.size())
{
string q;
q = m;
m = n;
n = q;
}
int len = max(m.size(),n.size()) - 1;
for(int i = 0; i < m.size(); i++)
a[i] = m[m.size() - 1 - i] - '0';
for(int i = 0; i < n.size(); i++)
b[i] = n[n.size() - 1 - i] - '0';
for(int i = 0; i < len; i++)
{
c[i] += a[i] - b[i];
if(a[i] < b[i])
{
a[i + 1]--;
c[i] = a[i] + 10 - b[i];
}
}
c[len] += a[len] - b[len];
while(len > 0 and c[len - 1] != 0)
len--;
if(len != len1)
return false;
else
{
for(int i = 0; i < len1; i++)
if(c[i] != num[i])
return false;
return true;
}
}
int main()
{
ios :: sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin >> N >> C;
int tmp = C;
while(tmp > 0)
{
len1++;
num[len1] = tmp % 10;
tmp /= 10;
}
for(int i = 0; i <= N; i++)
cin >> mn[i];
for(int i = 0; i <= N; i++)
{
for(int j = i + 1; j <= N; j++)
{
string cnt1 = to_string(mn[i]);
string cnt2 = to_string(mn[j]);
if(find(cnt1, cnt2) == true)
ans++;
}
}
cout << ans;
return 0;
}