码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces 515C. Drazil and Factorial

时间:2015-06-13 21:30:56      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

//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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!