zero(NOIP模拟赛 Round 4)
题目描述
假设x=N!,那么x的末尾有多少个零呢?
输入
一行,一个整数N。
输出
输出只有一个整数,表示x末尾零的个数。
这道题目,我们看一看数据范围,
10^1000肯定是高精啦!
然后我们再想一想如何计算多少个0
我们可以肯定0=2*5(好吧,只是递推式),并且2的数量一定比5多
所以我们只需要计算N!中含有多少个5
然后我们列个表5 10 15 20 25 30 35 40 45 50
1 1 1 1 2 1 1 1 1 2
很显然5的个数就可以得到递归式:
while(num)
{
num/=5;ans+=num;
}
然后贴一下代码经验:
如果像我写的一样,在函数中调用字符数组的指针,那么我们如果要将这个数组清空,不能用memset而要for一遍,并且要提前记录strlen(a)因为你在清零的时候,strlen(a)不是定值!!
再说一遍
调用指针数组时不能用memset!!!
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char qaq[];
char ans[];
int num1[],num2[];
void gjj(char a[],char b[])
{ memset(num1,,sizeof(num1));
memset(num2,,sizeof(num2));
int l1=strlen(a),l2=strlen(b),l;
for(int i=;i<=l1-;i++)
num1[l1-i-]=a[i]-'';
for(int i=;i<=l2-;i++)
num2[l2-i-]=b[i]-'';
if(l1>l2)l=l1;
else l=l2;
for(int i=;i<=l-;i++)
{
num1[i]+=num2[i];
if(num1[i]>=)num1[i+]++,num1[i]-=;
}
while(num1[l])l++;
for(int i=l-;i>=;i--)
a[l-i-]=num1[i]+;
}
void div(char a[],int b)
{
int r[];
memset(r,,sizeof(r));
int num=-;
int d=;
for(int i=;i<strlen(a);i++)
{
r[++num]=(d*+a[i]-'')/b;
d=(d*+(a[i]-''))%b;
}
int p=;
int qs=strlen(a);
for(int i=;i<qs;i++)
a[i]=;
for(int i=;i<=num;i++)
if(!r[i])++p;else break;
int tot=-;
for(int i=p;i<=num;i++)
{
a[++tot]=r[i]+'';
}
}
int main(){
freopen("zero.in","r",stdin);
freopen("zero.out","w",stdout);
scanf("%s",qaq);
ans[]='';
while()
{
div(qaq,);
if(!strlen(qaq))break;
gjj(ans,qaq);
}
printf("%s\n",ans);
fclose(stdin);
fclose(stdout);
}
zero(NOIP模拟赛 Round 4)的更多相关文章
- 水(NOIP模拟赛Round #10)
题目描述: 小Z有一个长度为的数列.他有次令人窒息的操作,每次操作可以使某个数字或.他当然是希望这些数字的乘积尽量小了.为了简化题目,你只需输出操作完成后的数列即可. ———————————————— ...
- 小红帽的画笔(NOIP模拟赛Round 7)
又到了神奇的模拟赛时间~ 真是丧~ 好吧我们来看看题目 小红帽是Pop star上最著名的人类画家,她可以将任何画出的东西变成真实的物品.赋予她这样神奇能力的正是她手上的画笔. 小红帽每次作画时,都需 ...
- YYH的营救计划(NOIP模拟赛Round 6)
题目描述 “咚咚咚……”“查水表!”原来是查水表来了,现在哪里找这么热心上门的查表员啊!YYH感动的热泪盈眶,开起了门…… YYH的父亲下班回家,街坊邻居说YYH被一群陌生人强行押上了警车!YYH的父 ...
- 题(NOIP模拟赛Round #10)
题目描述: 有一张的地图,其中的地方是墙,的地方是路.有两种操作: 给出个地点,询问这个地点中活动空间最大的编号.若询问的位置是墙,则活动空间为:否则活动空间为询问地点通过四联通能到达的点的个数.如果 ...
- 大(NOIP模拟赛Round #10)
题目描述: 小Z有个n个点的高清大图,每个点有且只有一条单向边的出边.现在你可以翻转其中的一些边,使他从任何一个点都不能通过一些道路走回这个点.为了方便,你只需输出方案数对取模即可.当在两个方案中有任 ...
- bananahill(NOIP模拟赛Round 8)
题目描述 香蕉川由座香蕉山组成,第i座山有它的高度.小Z准备从左到右爬这里的恰好座香蕉山,但他不希望山的高度起伏太大,太过颠簸,会让本就体育不好的他过于劳累.所以他定义了爬山的劳累度是所有爬的相邻的两 ...
- 战斗机的祈雨仪式(NOIP模拟赛Round 7)
[问题描述] 炎炎夏日,如果没有一场大雨怎么才能尽兴?秋之国的人民准备了一场祈雨仪式.战斗机由于拥有操纵雷电的能力,所以也加入了其中,为此,她进行了一番准备. 战斗机需要给自己的Spear of Lo ...
- 魔法使的烟花(NOIP模拟赛Round 7)
[问题描述] 魔法森林里有很多蘑菇,魔法使常常采摘它们来制作魔法药水.为了在6月的那个奇妙的晚上用魔法绽放出最绚丽的烟花,魔法使决定对魔法森林进行一番彻底的勘探. 魔法森林分为n个区域,由n-1条长度 ...
- 灰姑娘的水晶鞋(NOIP模拟赛Round 7)
[问题描述] 传说中的水晶鞋有两种颜色:左边的水晶鞋是红色,右边的是蓝色,据说穿上它们会有神奇的力量. 灰姑娘要找到她所有的n双水晶鞋,它们散落在一条数轴的正半轴上,坐标各不相同,每双水晶鞋还有一个权 ...
- YYH的球盒游戏(NOIP模拟赛Round 6)
题目描述 YYH有一些总共有种颜色的球,他有颜色的球个.他同样有个盒子,第个盒子能放个球. 他的目标是把这个球按规则放进个盒子里: 对于一个盒子,对于每种颜色的球至多只能放个. 把颜色为的球放进盒子, ...
随机推荐
- Open source cryptocurrency exchange
Peatio: https://github.com/peatio/peatio ViaBTC: https://github.com/viabtc/viabtc_exchange_server
- Arch + Win10 EFI 引导重装记录
Lenovo G50-70 BCM43142网卡,Win10原版镜像. 主板调成EFI启动. 制作Win10启动盘,打开UltraISO,文件,打开,选中Win10镜像,启动,写入硬盘映像,格式化,写 ...
- 大话CNN经典模型:VGGNet
2014年,牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司的研究员一起研发出了新的深度卷积神经网络:VGGNet,并取得了ILSVRC20 ...
- 清空Fragment回退栈中某个Fragment之上的所有Fragment
根据debug信息查看Fragment回退栈的情况,具体debug代码如下: int num = getActivity().getSupportFragmentManager().getBackSt ...
- Android Url相关工具 通用类UrlUtil
1.整体分析 1.1.源代码查看,可以直接Copy. public class UrlUtil { public static boolean isUrlPrefix(String url) { re ...
- gettid 和pthread_self的区别
转: Linux中,每个进程有一个pid,类型pid_t,由getpid()取得.Linux下的POSIX线程也有一个id,类型 pthread_t,由pthread_self()取得,该id由线程库 ...
- Spark 的情感分析
Spark 的情感分析 本文描述了基于 Spark 如何构建一个文本情感分析系统.文章首先介绍文本情感分析基本概念和应用场景,其次描述采用 Spark 作为分析的基础技术平台的原因和本文使用到技术组件 ...
- 发送广播重新挂载SD卡,使图库可以及时显示自己保存的图片(无需手机重启)
我们或许经常会遇到这种情况,明明保存了图片,但是当你打开图片时,却没有找到这张图片,手机重启之后才能看到.这是因为SD卡并没有重新挂载,图库也无法把这张图片加载进去,解决这个问题非常简单,只需要我们模 ...
- 《Cracking the Coding Interview》——第2章:链表——题目1
2014-03-18 02:16 题目:给定一个未排序的单链表,去除其中的重复元素. 解法1:不花额外空间,使用O(n^2)的比较方法来找出重复元素. 代码: // 2.1 Remove duplic ...
- js限制文本框只能输入特定字符
限制只能输入数字 // ---------------------------------------------------------------------- // <summary> ...