51 nod 1435 位数阶乘

来源:互联网 发布:客户管理系统源码 编辑:程序博客网 时间:2024/06/05 18:06

思路:  拆解数字


#include <iostream>#include <stdio.h>#include <algorithm>using namespace std;int a[100005];int main(){    int t;    cin>>t;    long long n;    cin>>n;    int cnt=0;    while(n)    {        int tmp=n%10;        if(tmp==2)            a[++cnt]=2;        if(tmp==3)            a[++cnt]=3;        if(tmp==4)            a[++cnt]=2,a[++cnt]=2,a[++cnt]=3;        if(tmp==5)            a[++cnt]=5;        if(tmp==6)            a[++cnt]=3,a[++cnt]=5;        if(tmp==7)            a[++cnt]=7;        if(tmp==8)            a[++cnt]=2,a[++cnt]=2,a[++cnt]=2,a[++cnt]=7;        if(tmp==9)            a[++cnt]=2,a[++cnt]=3,a[++cnt]=3,a[++cnt]=7;        n/=10;    }    sort(a+1,a+1+cnt);    for(int i=cnt;i>=1;i--)        cout<<a[i];    return 0;}


原创粉丝点击