/*
ID: lucien23
PROG: crypt1
LANG: C++
*/
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;
int main()
{
ifstream infile("crypt1.in");
ofstream outfile("crypt1.out");
if(!infile || !outfile)
{
cout<<"file operation failure!"<<endl;
return -1;
}
int N;
infile>>N;
int *nums=new int[N];
for (int i=0;i<N;i++)
{
infile>>nums[i];
}
int count=0;
for (int i=0;i<N;i++)
{
for (int j=0;j<N;j++)
{
for (int k=0;k<N;k++)
{
for (int m=0;m<N;m++)
{
for (int n=0;n<N;n++)
{
int num1=nums[i]*100+nums[j]*10+nums[k];
int num2=nums[m]*10+nums[n];
int partialProd1=num1*nums[n];
int partialProd2=num1*nums[m];
int prod=num1*num2;
int digits[10];
digits[0]=partialProd1/100;
digits[1]=(partialProd1%100)/10;
digits[2]=partialProd1%10;
digits[3]=partialProd2/100;
digits[4]=(partialProd2%100)/10;
digits[5]=partialProd2%10;
digits[6]=prod/1000;
digits[7]=(prod/100)%10;
digits[8]=(prod%100)/10;
digits[9]=prod%10;
int t;
for (t=0;t<10;t++)
{
if(find(nums,nums+N,digits[t])==nums+N)
{
break;
}
}
if(t==10)
count++;
}
}
}
}
}
outfile<<count<<endl;
delete[] nums;
infile.close();
outfile.close();
return 0;
}