标签:
//codeforces 515C. Drazil and Factorial
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
/**
4!=2!*2!*3!
6!=1*2*3*4*5*6=5!*3!
8!=1*2*3*4*5*6*7*8=7!*2!*2!*2!
9!=1*2*3*4*5*6*7*8*9=7!*2!*3!*3!
*/
int main()
{
char a[20];
int ch[10] = {0};
int n;
cin >> n;
cin >> a;
for (int i = 0; i < n; ++i) {
if (a[i] == ‘4‘) {
ch[2] += 2;
++ch[3];
} else if (a[i] == ‘6‘) {
++ch[3];
++ch[5];
} else if (a[i] == ‘8‘) {
++ch[7];
ch[2] += 3;
} else if (a[i] == ‘9‘) {
++ch[7];
++ch[2];
ch[3] += 2;
} else if (a[i] == ‘0‘ || a[i] == ‘1‘) {
continue;
} else {
++ch[a[i] - ‘0‘];
}
}
for (int i = 9; i >= 2; --i) {
while (ch[i]) {
putchar(i + ‘0‘);
--ch[i];
}
}
return 0;
}
只是觉得很神奇的做法,但不太明白为什么……先记下来……
Codeforces 515C. Drazil and Factorial
标签:
原文地址:http://www.cnblogs.com/wenruo/p/4574046.html