#include <iostream>
#include <set>
using namespace std;
long long  proizvodCifara(long long a)
{
    long long proizvod =1;
    while(a>0)
    {
        proizvod = proizvod*(a % 10);
        a = a/10;
        if (proizvod == 0)
            return 0;
    }
    return proizvod;
}
long long  glorifiedSelectionSort(long long n[], int a )
{
    int najmanji = n[0];
    int poz = 0;
    for(int i   = 0; i < a; i++)
        if(n[i]<najmanji ||  najmanji < 0 &&  n[i] >0)
        {
            poz =  i;
            najmanji = n[i];
        }
    return  poz;
}
int main()
{

    int t;
    cin>>t;
    long long n[t];
    long long rez[t];
    for(int i  =  0; i  < t;  i  ++)
        cin>>n[i];
    set <long long>  a;
    int  prosli = 0;
    for(int k = 0;  k < t; k ++)
    {
        int najmanji = glorifiedSelectionSort(n,t);
        if(k  == 0)
            for(int i = 1; i  <=  n[najmanji]; i ++)
                a.insert(proizvodCifara(i));
        else
        {
            for(int i = -1*n[prosli]; i <=n[najmanji];  i++)
                a.insert(proizvodCifara(i));
        }
        rez[najmanji]=a.size();
        n[najmanji] = -1*n[najmanji];
        prosli = najmanji;
    }
    for(int  i =  0; i < t; i++)
        cout<<rez[i]<<endl;
    return 0;
}