#include<iostream>
#include<cstring>
#include<string>
#include<algorithm>
#include<cstdio>
#define ll long long int
#define mk make_pair
using namespace std;
int n;
char s[111][20];
ll a[111];
pair<ll,ll> dp[1<<11][111];
pair<ll,ll> solve(int index,ll mask,ll sum)
{
// base case
if(index==n)
return mk(sum,0);
// if already found return the ans
if(dp[mask][index].first!=-1)
return dp[mask][index];
pair<ll,ll> temp;
// not picking current number
dp[mask][index]=solve(index+1,mask,sum);
// checking if it is possible to pick current number
int l=strlen(s[index]);
ll new_mask=mask,flag=0;
for(int i=0;i<l;i++)
{
if((mask&(1<<(s[index][i]-'0')))==0)
{
new_mask=new_mask|(1<<(s[index][i]-'0'));
}
else
{
flag=1;
break;
}
}
if(!flag)
{
temp=solve(index+1,new_mask,sum+a[index]);
temp.second+=1;
if(temp.first>dp[mask][index].first)
dp[mask][index]=temp;
else if(temp.first==dp[mask][index].first)
dp[mask][index].second=max(dp[mask][index].second,temp.second);
}
return dp[mask][index];
}
int main()
{
while((cin>>n))
{
int i,j;
for(i=0;i<n;i++)
cin>>a[i];
for(i=0;i<n;i++)
sprintf(s[i],"%lld",a[i]);
for(i=0;i<(1<<11);i++)
{
for(j=0;j<=n;j++)
{
dp[i][j].first=-1;
dp[i][j].second=0;
}
}
pair<ll,ll> ans=solve(0,0,0);
cout<<ans.second<<"\n";
}
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGNzdHJpbmc+CiNpbmNsdWRlPHN0cmluZz4KI2luY2x1ZGU8YWxnb3JpdGhtPgojaW5jbHVkZTxjc3RkaW8+CiNkZWZpbmUgbGwgbG9uZyBsb25nIGludAojZGVmaW5lIG1rIG1ha2VfcGFpcgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG47CmNoYXIgc1sxMTFdWzIwXTsKbGwgYVsxMTFdOwpwYWlyPGxsLGxsPiBkcFsxPDwxMV1bMTExXTsKCnBhaXI8bGwsbGw+IHNvbHZlKGludCBpbmRleCxsbCBtYXNrLGxsIHN1bSkKewogICAgLy8gYmFzZSBjYXNlCiAgICBpZihpbmRleD09bikKICAgICAgICByZXR1cm4gbWsoc3VtLDApOwoKICAgIC8vIGlmIGFscmVhZHkgZm91bmQgcmV0dXJuIHRoZSBhbnMKICAgIGlmKGRwW21hc2tdW2luZGV4XS5maXJzdCE9LTEpCiAgICAgICAgcmV0dXJuIGRwW21hc2tdW2luZGV4XTsKCiAgICBwYWlyPGxsLGxsPiB0ZW1wOwogICAgLy8gbm90IHBpY2tpbmcgY3VycmVudCBudW1iZXIKICAgIGRwW21hc2tdW2luZGV4XT1zb2x2ZShpbmRleCsxLG1hc2ssc3VtKTsKCgogICAgLy8gY2hlY2tpbmcgaWYgaXQgaXMgcG9zc2libGUgdG8gcGljayBjdXJyZW50IG51bWJlcgogICAgaW50IGw9c3RybGVuKHNbaW5kZXhdKTsKICAgIGxsIG5ld19tYXNrPW1hc2ssZmxhZz0wOwogICAgZm9yKGludCBpPTA7aTxsO2krKykKICAgIHsKICAgICAgICBpZigobWFzayYoMTw8KHNbaW5kZXhdW2ldLScwJykpKT09MCkKICAgICAgICB7CiAgICAgICAgICAgIG5ld19tYXNrPW5ld19tYXNrfCgxPDwoc1tpbmRleF1baV0tJzAnKSk7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIGZsYWc9MTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfQogICAgaWYoIWZsYWcpCiAgICB7CiAgICAgICAgdGVtcD1zb2x2ZShpbmRleCsxLG5ld19tYXNrLHN1bSthW2luZGV4XSk7CiAgICAgICAgdGVtcC5zZWNvbmQrPTE7CiAgICAgICAgaWYodGVtcC5maXJzdD5kcFttYXNrXVtpbmRleF0uZmlyc3QpCiAgICAgICAgICAgIGRwW21hc2tdW2luZGV4XT10ZW1wOwogICAgICAgIGVsc2UgaWYodGVtcC5maXJzdD09ZHBbbWFza11baW5kZXhdLmZpcnN0KQogICAgICAgICAgICBkcFttYXNrXVtpbmRleF0uc2Vjb25kPW1heChkcFttYXNrXVtpbmRleF0uc2Vjb25kLHRlbXAuc2Vjb25kKTsKICAgIH0KICAgIHJldHVybiBkcFttYXNrXVtpbmRleF07Cn0KCgppbnQgbWFpbigpCnsKICAgIHdoaWxlKChjaW4+Pm4pKQogICAgewogICAgICAgIGludCBpLGo7CiAgICAgICAgZm9yKGk9MDtpPG47aSsrKQogICAgICAgICAgICBjaW4+PmFbaV07CiAgICAgICAgZm9yKGk9MDtpPG47aSsrKQogICAgICAgICAgICBzcHJpbnRmKHNbaV0sIiVsbGQiLGFbaV0pOwogICAgICAgIGZvcihpPTA7aTwoMTw8MTEpO2krKykKICAgICAgICB7CiAgICAgICAgICAgIGZvcihqPTA7ajw9bjtqKyspCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgZHBbaV1bal0uZmlyc3Q9LTE7CiAgICAgICAgICAgICAgICAgICAgZHBbaV1bal0uc2Vjb25kPTA7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHBhaXI8bGwsbGw+IGFucz1zb2x2ZSgwLDAsMCk7CiAgICAgICAgY291dDw8YW5zLnNlY29uZDw8IlxuIjsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==