Codeforce 515 C . Drazil and Factorial 规律

传送门:

C. Drazil and Factorial

time limit per test

2 seconds

memory limit per test

256 megabytes

input

standard input

output

standard output

Drazil is playing a math game with Varda.

Let’s definefor positive integerxas a product of factorials of its digits. For example,.

First, they choose a decimal numberaconsisting ofndigits that contains at least one digit larger than1. This number may possibly start with leading zeroes. Then they should find maximum positive numberxsatisfying following two conditions:

1.xdoesn’t contain neither digit0nor digit1.

2..

Help friends find such number.

Input

The first line contains an integern(1≤n≤15) — the number of digits ina.

The second line containsndigits ofa. There is at least one digit inathat is larger than1. Numberamay possibly contain leading zeroes.

Output

Output a maximum possible integer satisfying the conditions above. There should be no zeroes and ones in this number decimal representation.

Sample test(s)

input

41234

output

33222

input

3555

output

555

Note

In the first case,

题目问你求最大的a

这样考虑 4!=3!*2!*2!

6!=5!*3!

8!=7!*2!*2!*2!

9!=7!*3!*3!*2!

于是得到了f(4)=f(322)

AC代码

#include<iostream>#include<string>#include<algorithm>#include<cstdlib>#include<cstdio>#include<set>#include<map>#include<vector>#include<cstring>#include<stack>#include<cmath>#include<queue>#define INF 0x0f0f0f0fusing namespace std;int main(){int i,j,k,l,m,n,temp;int a[10];memset(a,0,sizeof(a));scanf("%d",&n);for(i=0;i<n;i++){scanf("%1d",&temp);switch(temp){case 2:a[2]++;break;case 3:a[3]++;break;case 4:a[3]++;a[2]+=2;break;case 5:a[5]++;break;case 6:a[3]++;a[5]++;break;case 7:a[7]++;break;case 8:a[2]+=3;a[7]++;break;case 9:a[2]++;a[3]+=2;a[7]++;break;}}for(i=9;i>=2;i–){for(j=0;j<a[i];j++){printf("%d",i);}}printf("\n");}

,生活若剥去了理想、梦想、幻想,那生命便只是一堆空架子

Codeforce 515 C . Drazil and Factorial 规律

相关文章:

你感兴趣的文章:

标签云: