#include<iostream>#include<cstring>#include<algorithm>#include<cmath>using namespace std;const long long a[13]={0,1,11,111,1111,11111,111111,1111111,11111111,111111111,1111111111,11111111111,111111111111};long long fac[13];int main(){ int n; int all,num; long long ans; int b[10]; fac[0]=1; for(int i=1;i<=12;i++){ fac[i]=i*fac[i-1];//把每个数阶乘的结果存到数组里 } while(cin>>n&&n!=0){ all=0; memset(b,0,sizeof(b)); for(int i=0;i<n;i++){ cin>>num; all=all+num; b[num]++;//b[num]表示num的数有几个,num为0到9 } ans=fac[n-1]*all; for(int i=0;i<10;++i){ ans/=fac[b[i]]; } cout<<(unsigned long long)ans*a[n]<<endl; } return 0;}
新闻热点
疑难解答