Codeforces Round #292 (Div. 2) Problem C - Drazil and Factorial
来源:互联网 发布:锡林浩特局气网络宾馆 编辑:程序博客网 时间:2024/05/16 19:44
题目连接:http://codeforces.com/contest/515/problem/C
Drazil is playing a math game with Varda.
Let's define for positive integer x as a product of factorials of its digits. For example, .
First, they choose a decimal number a consisting of n digits that contains at least one digit larger than 1. This number may possibly start with leading zeroes. Then they should find maximum positive number x satisfying following two conditions:
1. x doesn't contain neither digit 0 nor digit 1.
2. = .
Help friends find such number.
The first line contains an integer n (1 ≤ n ≤ 15) — the number of digits in a.
The second line contains n digits of a. There is at least one digit in a that is larger than 1. Number a may possibly contain leading zeroes.
Output a maximum possible integer satisfying the conditions above. There should be no zeroes and ones in this number decimal representation.
41234
33222
3555
555
In the first case,
这题比较有意思的贪心,观察F(x)这个函数的性质,很容易想到要使数字最大,那么要求x里只能有素数,并且数字从大到小排列。我们通过对2到9这8个数字因数分解、然后在把他们转化成几个数字即可,关键在分解数字个过程,要使数字x最大 我们尽量把原来的一位数分成多位数,然后把他们的个数存到数组里输出便可以了。
#include<iostream>#include<algorithm>#include<string.h>using namespace std;int main(){ int cnt[8] = {0} , n ; char ch ; cin >> n ; while(n--) { cin >> ch; switch(ch) { case '2' : cnt[2]++; break; case '3' : cnt[3]++; break; case '4' : cnt[3]++; cnt[2] += 2; break; case '5' : cnt[5]++; break; case '6' : cnt[5]++; cnt[3]++; break; case '7' : cnt[7]++; break; case '8' : cnt[7]++; cnt[2] +=3; break; case '9' : cnt[7]++; cnt[3] +=2; cnt[2]++;break; } } for(int i = 7 ; i > 1 ; i--) { while(cnt[i]--) { cout << i; } } cout << endl; return 0;}
- Codeforces Round #292 (Div. 2) Problem C - Drazil and Factorial
- Codeforces Round #292 (Div. 2) -- C. Drazil and Factorial
- Codeforces Round #292 (Div. 2) C. Drazil and Factorial(贪心YY)
- Codeforces Round #292 (Div. 1)---A. Drazil and Factorial
- Codeforces Round #292 (Div. 2) C. Drazil and Factoria
- Codeforces #292C. Drazil and Factorial 数学
- 【CodeForces】C. Drazil and Factorial
- Codeforces Round #292 (Div. 1) C. Drazil and Park
- Codeforces Round #292 (Div. 2) -- A. Drazil and Date
- Codeforces Round #292 (Div. 2)D. Drazil and Tiles
- Codeforces Round #292 (Div. 2) -- A. Drazil and Date
- codeforces#292-C - Drazil and Factorial-数学规律题
- Drazil and Factorial - CodeForces 513 C 水题
- Codeforces 515C Drazil and Factorial
- Codeforces 515C Drazil and Factorial
- codeforces 515C. Drazil and Factorial
- Codeforces-515C-Drazil and Factorial
- CodeForces - 515C Drazil and Factorial
- NYOJ--204 Coin Test【水题】
- 【JavaScript】JavaScript基础-函数
- Mint17.1-64bit_Android开发环境配置
- bzoj 1121: [POI2008]激光发射器SZK
- 因为数据结构,我喜欢上编程
- Codeforces Round #292 (Div. 2) Problem C - Drazil and Factorial
- 算法导论2.1-4
- POJ 3187 Backward Digit Sums (dfs全排列)
- POJ 2352 Stars(树状数组 or 线段树)
- 【JavaScript】JavaScript的对象-JavaScript对象简单剖析
- PMBOK融会贯通:几种估算类比:类比估算、参数估算、自下而上估算、三点估算
- hdu5002 LCT
- Java接口
- 对测试的称呼