codeforces 515C. Drazil and Factorial 解题报告
题目链接:http://codeforces.com/problemset/problem/515/C
题目意思:给出含有 n 个只有阿拉伯数字的字符串a(可能会有前导0),设定函数F(a) = 每个数字的阶乘乘积。例如 F(135) = 1! * 3! * 5! 。需要找出 x,使得F(x) = F(a),且组成 x 的数字中没有0和1。求最大的 x 为多少。
这个我是看了每个数字的转换才知道怎么做的。
0, 1 —— > empty(用空串表示)
2 —— > 2
3 —— > 3
4 —— > 322
5 —— > 5
6 —— > 53
7 —— > 7
8 —— > 7222
9 —— > 7332
然后保存这些转换,转换完之后排一下序就是答案了。
要特别注意 ans 开的数组大小,n 最大为15,考虑全部是9的情况,转换后为4个数字,即开到4 * 15 = 60 就差不多了。
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
using namespace std; const int maxn = + ;
const int N = + ;
char convert[maxn][maxn] = {"", "", "", "", "", "", "", "", "", ""};
char s[maxn];
char ans[N]; int main()
{
#ifndef ONLINE_JUDGE
freopen("in.txt", "r", stdin);
#endif // ONLINE_JUDGE int n;
while (scanf("%d", &n) != EOF) {
scanf("%s", s);
int cnt = ;
for (int i = ; i < n; i++) {
int len = strlen(convert[s[i]-'']);
for (int j = ; j < len; j++)
ans[cnt++] = convert[s[i]-''][j];
}
sort(ans, ans+cnt);
reverse(ans, ans+cnt);
for (int i = ; i < cnt; i++)
printf("%c", ans[i]);
puts("");
}
return ;
}
codeforces 515C. Drazil and Factorial 解题报告的更多相关文章
- CodeForces 515C. Drazil and Factorial
		
C. Drazil and Factorial time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
 - codeforces   515A.Drazil and Date   解题报告
		
题目链接:http://codeforces.com/problemset/problem/515/A 题目意思:问能否从 (0, 0) 出发,恰好走 s 步,到达该位置(a, b). 首先容易知道, ...
 - CodeForces 515C Drazil and Factorial (水题)
		
题意:给出含有 n 个只有阿拉伯数字的字符串a,设定函数F(a) = 每个数字的阶乘乘积 .需要找出 x,使得F(x) = F(a),且组成 x 的数字中没有0和1.求最大的 x 为多少. 析:最大, ...
 - Codeforces Educational Round 92 赛后解题报告(A-G)
		
Codeforces Educational Round 92 赛后解题报告 惨 huayucaiji 惨 A. LCM Problem 赛前:A题嘛,总归简单的咯 赛后:A题这种**题居然想了20m ...
 - codeforces  476C.Dreamoon and Sums  解题报告
		
题目链接:http://codeforces.com/problemset/problem/476/C 题目意思:给出两个数:a 和 b,要求算出 (x/b) / (x%b) == k,其中 k 的取 ...
 - Codeforces Round #382 (Div. 2) 解题报告
		
CF一如既往在深夜举行,我也一如既往在周三上午的C++课上进行了virtual participation.这次div2的题目除了E题都水的一塌糊涂,参赛时的E题最后也没有几个参赛者AC,排名又成为了 ...
 - codeforces   507B. Amr and Pins  解题报告
		
题目链接:http://codeforces.com/problemset/problem/507/B 题目意思:给出圆的半径,以及圆心坐标和最终圆心要到达的坐标位置.问最少步数是多少.移动见下图.( ...
 - codeforces   500B.New Year Permutation   解题报告
		
题目链接:http://codeforces.com/problemset/problem/500/B 题目意思:给出一个含有 n 个数的排列:p1, p2, ..., pn-1, pn.紧接着是一个 ...
 - codeforces  B. Xenia and Ringroad  解题报告
		
题目链接:http://codeforces.com/problemset/problem/339/B 题目理解不难,这句是解题的关键 In order to complete the i-th ta ...
 
随机推荐
- Markdown 写作工具选择
			
Markdown 写作工具选择 候选产品 参考了少数派网站 markdown 写作工具2015年度盘点 http://sspai.com/32483, Windows 下 Markdown 的编辑工具 ...
 - EF-联合查询-结果集-Group by-统计数目
			
EF框架用着痛并且快乐着··· 毕竟用习惯了SQL语句直接硬查的··· SELECT C0.ID,C_C.Name,C_C.C_COUNT FROM article_type C0 INNER JOI ...
 - iOS设置分割线从边框顶端开始
			
好方法,本来是在xib里面设置自定义分割线位置,结果还是差15像素,该方法亲测好使. IOS8 设置TableView Separatorinset 分割线从边框顶端开始 (转) 在ios8上 [Ta ...
 - noip2012 疫情控制
			
[问题描述] H国有n个城市,这n个城市用n-1条双向道路相互连通构成一棵树,1号城市是首都,也是树中的根节点. H国的首都爆发了一种危害性极高的传染病.当局为了控制疫情,不让疫情扩散到边境城市(叶子 ...
 - nyoj 44  子串和 简单动态规划
			
子串和 时间限制:5000 ms | 内存限制:65535 KB 难度:3 描述 给定一整型数列{a1,a2...,an},找出连续非空子串{ax,ax+1,...,ay},使得该子序列的和最 ...
 - I’ve seen the world,lit it up as my stage now
			
I've seen the world,lit it up as my stage now 阅尽繁华 点亮红尘做舞台 Channeling angels in,the new age now 粉末登场 ...
 - CentOS6.3编译安装Memcached集群分布式缓存代理Magent-0.6出错汇总
			
参考文章:Memcached集群/分布式/高可用 及 Magent缓存代理搭建过程 详解,搭建Magent,在编译的过程中会出现很多错误: #编译安装安装magent到 /usr/local/mage ...
 - linux之awk、sed命令
			
总结: 两个命令的正则表达式都用''单引号进行区分. 输出变量名用单引号,输出变量值用双引号,这个在bash脚本里一般是通用的. 在bash脚本里要使用变量值,都要加上双引号 awk用法: 参考网址: ...
 - 服务器&域名那些事儿
			
购买的阿里云的服务器(ECS)和域名 请移步: 服务器&域名那些事儿 服务器&域名那些事儿2 github 博客
 - JAVA多线程基础知识(一)
			
一. 基础知识 要了解多线程首先要知道一些必要的概念,如进程,线程等等.开发多线程的程序有利于充分的利用系统资源(CPU资源),使你的程序执行的更快,响应更及时. 1. 进程,一般是指程序或者任务的执 ...