问题 B: N! 普拉斯

时间限制: 1 Sec  内存限制: 128 MB
提交: 114  解决: 35
[提交] [状态] [讨论版] [命题人:admin]

题目描述

在处理阶乘时也需要借助计算器。 
在计算机中,数字是通过像01像素矩阵来显示的,最终的显示效果如下: 
 
宝儿姐一直在思考一个问题,N!末尾究竟有多少个0?我们假设N!末尾有k个0,请按照规则打印k。 

输入

输入一个正整数n(n< 50) ,输入以EOF结尾。

输出

我们假设N!末尾有k个0,请按照规则打印k,数字之间间隔3列0。 

样例输入

2

样例输出

01110
10001
10011
10101
11001
10001
01110

大致思路:

  1、拿上一题的三维字符数组来用,定义也是一致的!

  2、看清题意,尾零的个数不超过两位数,其实!可以直接特判输出!

  3、要求输出时,数字之间间隔3列0,别忘了!

  4、n不大,可以每次把尾零截出来,然后仅保留后十七位——或许不对吧!2333

题解:

 #include<iostream>
#include<stdio.h>
#include<string.h>
#include<string>
#include<vector>
#include<algorithm>
#define ll long long
using namespace std;
#define N 100 char s1[];
int sum[];
vector<int>order; char num[][][]={
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""},
{"","","","","",
"",""}}; void paint( ) //绘制01字符串!
{
for(int i=;i<=;i++){
for(int j=(int)order.size()-;j>=;j--){
int x=order[j];
printf("%s",num[x][i]);
if(j>)
printf("%s",num[][i]);
}
cout<<endl;
}
} int cul(int n){
int len=;
sum[]=;
for(int i=;i<=n;i++){
for(int j=;j<len;j++){
sum[j]*=i;
}
int j=;
while(j<len){
if(sum[j]>=){
sum[j+]+=sum[j]/;
sum[j]%=;
if(j+>=len)
len++;
}
j++;
}
}
return len;
} int main()
{
int n;
while(scanf("%d",&n)!=EOF){ memset(sum,,sizeof(sum));
int len3=cul(n); //计算n的阶乘! /* for(int i=0;i<len3;i++){
printf("%d",sum[i]);
}
cout<<"*****"<<endl;
*/
int i=;
while(sum[i]==) //计算开头的零的数量!!
i++; order.clear();
if(i==)
order.push_back();
while(i>){
order.push_back(i%);
i/=;
} paint();
} return ;
}

(暴力模拟题,一定要耐住性子,不急不躁,稳住才能AC)

2018/7/31-zznu-oj-问题 B: N! 普拉斯 -【求大数的阶乘-ll存不下-然后取尾零的个数输出-暴力模拟】的更多相关文章

  1. ZZNU 2125:A + B 普拉斯(傻逼题+大数加法)

    2125: A + B 普拉斯 时间限制: 1 Sec  内存限制: 128 MB 提交: 94  解决: 28 [提交] [状态] [讨论版] [命题人:admin] 题目描述 "别人总说 ...

  2. [Spark内核] 第31课:Spark资源调度分配内幕天机彻底解密:Driver在Cluster模式下的启动、两种不同的资源调度方式源码彻底解析、资源调度内幕总结

    本課主題 Master 资源调度的源码鉴赏 [引言部份:你希望读者看完这篇博客后有那些启发.学到什么样的知识点] 更新中...... 资源调度管理 任务调度与资源是通过 DAGScheduler.Ta ...

  3. 乘积尾零|2018年蓝桥杯B组题解析第三题-fishers

    标题:乘积尾零 如下的10行数据,每行有10个整数,请你求出它们的乘积的末尾有多少个零? 5650 4542 3554 473 946 4114 3871 9073 90 4329 2758 7949 ...

  4. 2018/03/31 每日一个Linux命令 之 date

    date 命令主要用于查看和修改时间和时区 -- 这里主要学习基本的查看和设置时间和时区的方法. 直接显示日期 date '+%D' 效果 vagrant@hong:~$ date '+%D' 03/ ...

  5. 2018.12.31 bzoj3771: Triple(生成函数+fft+容斥原理)

    传送门 生成函数经典题. 题意简述:给出nnn个数,可以从中选1/2/31/2/31/2/3个,问所有可能的和对应的方案数. 思路: 令A(x),B(x),C(x)A(x),B(x),C(x)A(x) ...

  6. ZZNU - OJ - 2080 : A+B or A-B【暴力枚举】

    2080 : A+B or A-B(点击左侧标题进入zznu原题页面) 时间限制:1 Sec 内存限制:0 MiB提交:8 答案正确:3 提交 状态 讨论区 题目描述 Give you three s ...

  7. [文章汇总]ASP.NET Core框架揭秘[最近更新:2018/10/31]

    之前一段时间都在个人公众号账号“大内老A”发布关于ASP.NET Core的系列文章,很多人留言希望能够同步到这里,所以在这里 对这些文章做一个汇总,以便于PC端阅读.如果说微软官方文档主要关于ASP ...

  8. it's time to change myself now (2018.10.31)

    自16年从新屋熊职校毕业,入职深圳某厂从事云存储两年半了.两年半的时间很快,快的感觉一生都会飞快,两年多一直很忙,忙的几乎忘了自己是否正向改变过. 正向改变,or 积极改变,今年十一回家,与几个好友小 ...

  9. Unity进阶----AssetBundle_02(加载依赖关系及网络资源)(2018/10/31)

    网络资源加载: string path ="file://"+ Application.streamingAssetsPath + "\\windows\\123&quo ...

随机推荐

  1. Linux 安装环境初始化检查 安装Nginx

    一 .阿里云 centos 6.8 32 位裸环境 实现:Linux Nginx mysql php redis 查看当前安装的服务 [root@iZgahlk1l73998Z etc]# servi ...

  2. golang 切片和map查询比较

    package main import ( "fmt" "time" ) var testTimeSlice = []string{"aa" ...

  3. 剑指offer60:把二叉树打印成多行。上到下按层打印二叉树。

    1 题目描述 从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行. 2 思路和方法 vector变量存储每一层的元素vector<vector<int> > ans ...

  4. (1+x)^n

    #include<stdio.h> int main() { int n,i; while(scanf("%d %d",&n,&i)!=EOF) { i ...

  5. go hello world第一个程序

    main 函数所在的包名必须使用main import "fmt"  导入包fmt  fmt包包含了Println方法的定义 func main() 程序运行入口方法和c语言相似 ...

  6. Spring框架ioc概括

    什么是Spring且能做什么 Spring是一个开源框架,它由Rod Johnson创建.它是为了解决企业应用开发的复杂性而创建的. Spring使用基本的JavaBean来完成以前只可能由EJB完成 ...

  7. 处理bugs心法

    1. 前提 第一层:遇到异常首先必须告诉自己,冷静,不要慌.(一看到Bug就心慌,那么武功就施展不了了) 2. 入门级 第二层:遇到Bug,第一潜意识看输出异常的信息的(控制台输出,Junit输出,页 ...

  8. diverta 2019 Programming Contest

    A:签到. #include<bits/stdc++.h> using namespace std; #define ll long long #define inf 1000000010 ...

  9. [javascript]原生js实现Ajax

    一.首先看JQuery提供的Ajax方法: $.ajax({ url: , type: '', dataType: '', data: { }, success: function(){ }, err ...

  10. linux 串口接收

    #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types. ...