//第一题
#include <iostream>
#include <cstring>
#include <vector>
using namespace std;
void dfs(vector<string> strs, int index, int len, int &count, vector<int> &ans)
{
if(index==len)
{
int a[6]={0};
for(int j=0;j<ans.size();j++)
{
a[ans[j]]++;
}
for(int k=0;k<=5;k++)
{
if(a[k]>1)
{
return;
}
}
count++;
return;
}
for(int m=0;m<strs[index].length();m++)
{
ans.push_back(strs[index][m]-'0');
dfs(strs,index+1,len,count,ans);
ans.pop_back();
}
return;
}
int main()
{
int n;
while(cin>>n)
{
vector<string> strs;
for(int i=0;i<n;i++)
{
string tmp;
cin>>tmp;
strs.push_back(tmp);
}
int len;
int count=0;
len=strs.size();
vector<int> ans;
dfs(strs,0,len,count,ans);
cout<<count<<endl;
}
return 0;
}