正确解法:

所有的0都一定是2*5产生的,所以将每个数拆成一堆2乘上一堆5再乘上一个数,之后统计下有多少个2和多少个5取少的那个就是答案

例题:

如下的10行数据,每行有10个整数,请你求出它们的乘积的末尾有多少个零?
5650 4542 3554 473 946 4114 3871 9073 90 4329
2758 7949 6113 5659 5245 7432 3051 4434 6704 3594
9937 1173 6866 3397 4759 7557 3070 2287 1453 9899
1486 5722 3135 1170 4014 5510 5120 729 2880 9019
2049 698 4582 4346 4427 646 9742 7340 1230 7683
5693 7015 6887 7381 4172 4341 2909 2027 7355 5649
6701 6645 1671 5978 2704 9926 295 3125 3878 6785
2066 4247 4800 1578 6652 4616 1113 6205 3264 2915
3966 5291 2904 1285 2193 1428 2265 8730 9436 7074
689 5510 8243 6114 337 4096 8199 7313 3685 211

注意:需要提交的是一个整数,表示末尾零的个数。不要填写任何多余内容。

#include<iostream>
#include<algorithm>
using namespace std;
int data[]={5650,4542,3554,473,946,4114,3871,9073,90,4329,
2758,7949,6113,5659,5245,7432,3051,4434,6704,3594,
9937,1173,6866,3397,4759,7557,3070,2287,1453,9899,
1486,5722,3135,1170,4014,5510,5120,729,2880,9019,
2049,698,4582,4346,4427,646,9742,7340,1230,7683,
5693,7015,6887,7381,4172,4341,2909,2027,7355,5649,
6701,6645,1671,5978,2704,9926,295,3125,3878,6785,
2066,4247,4800,1578,6652,4616,1113,6205,3264,2915,
3966,5291,2904,1285,2193,1428,2265,8730,9436,7074,
689,5510,8243,6114,337,4096,8199,7313,3685,211};
int a2=0,a5=0;
int main(){for(int i=0;i<100;i++){while(data[i]){if(data[i]%2==0){data[i]/=2;a2++;}else if(data[i]%5==0){data[i]/=5;a5++;}else break;}}int ans=min(a2,a5);cout<<ans<<endl;return 0;
}

计算几百个数据相乘之积末尾0的个数相关推荐

  1. c语言 n阶阶乘尾0个数,计算n的阶乘(n!)末尾0的个数

    题目: 给定一个正整数n,请计算n的阶乘n!末尾所含有"0"的个数. 举例: 5!=120,其末尾所含有的"0"的个数为1: 10!= 3628800,其末尾所 ...

  2. 计算 n! 中末尾0的个数 求n!中p的重数

    题意: 输入正整数n,计算 n! 中末尾0的个数 输入:输入一个正整数n (1≤n≤1 000 000 000) 输出:输出 n! 末尾0的个数 样例输入:3 100 1024 样例输出:0 24 2 ...

  3. C++版本计算n阶乘末尾0的个数原理讲解及代码实现

    C++版本计算n阶乘末尾0的个数原理讲解及代码实现 /*! * Copyright (c) 2020,ZYF. * All Rights Reserved. * * \file Factorial.c ...

  4. java 阶乘后几位,java阶乘计算获得结果末尾0的个数代码实现

    看到题目后,分析了下, 10的阶乘就已经很大了.计算出来再得到这个末尾的0的个数,完全不现实,即使实现了也是很麻烦的. 后来想某个数的阶乘中乘积有5结尾的数字的时候就应该在结果的末尾产生一个0. 付诸 ...

  5. 【经典智力题】1024! 末尾有多少个0?——“计算阶乘末尾0的数量”问题引出

    网上有这样一个广为流传的有趣问题: 1024! 末尾有多少个0? 相应的解法是: 末尾0的个数取决于乘法中因子2和5的个数.显然乘法中因子2的个数大于5的个数,所以我们只需统计因子5的个数. 是5的倍 ...

  6. 【SQL开发实战技巧】系列(十五):查找最值所在行数据信息及快速计算总和百之max/min() keep() over()、fisrt_value、last_value、ratio_to_report

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  7. java怎么让表格的字段相乘,excel表格怎么让数据相乘-如何在excel表格中设置乘法公式...

    EXCEL里的表格使两列自动相乘怎么设置? 在你需要得出结果的那个单元格,输入"=",再点击你需要相乘的第一个单元格,再输入"*",再点击你需要相乘的第二个单元 ...

  8. 现身说法:实际业务出发分析百亿数据量下的多表查询优化

    今天给大家带来的讨论主题是通过实战经验来对百亿数据量下的多表数据查询进行优化,俗话说的好,一切脱离业务的架构都是耍流氓,接下来我就整理一下今天早上微信群里石头哥给大家分享的百亿数据量多表查询架构以及优 ...

  9. Redis基本使用及百亿数据量中的使用技巧分享

    作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9941208.html 作者:大石头 时间:2018-11-10 晚上20:00 地点:钉钉群(组织代码B ...

最新文章

  1. Nature Communications:实时记录神经系统,解开大脑秘密
  2. 跳槽,你心脚同步吗?
  3. MC-21-B高精度电阻箱初步测试
  4. AJAX(二)jquery ajax
  5. java 远程udp_远程客户端不接收UDP数据包
  6. kubectl更换镜像命令
  7. dython:Python数据建模宝藏库
  8. python 什么是原类_Python 什么是元类(metaclasses)?
  9. P3750-[六省联考2017]分手是祝愿【期望dp】
  10. MATLAB矩阵操作和算术运算符
  11. 计算机视觉实习面经【微软/阿里/腾讯】
  12. html5圆形导航菜单,圆滑细腻,那些使用圆形导航菜单的漂亮网页设计
  13. 象棋游戏显示服务器断开,天天象棋黑屏闪退怎么办 游戏玩不了解决方法
  14. 计算机408考研笔记汇总
  15. android 4.4 设置谷歌拼音输入法为默认输入法,android4.4修改出厂默认输入法
  16. 疫情又又又来了,看我爬取京东6000款口罩,来看看那一款最适合你
  17. 版号解禁,网络游戏却未解冻
  18. 软件测试1——PIE模型
  19. MCAL-GTM之时钟管理CMU
  20. 阿根廷世界杯夺冠,跨境卖家如何借势营销?

热门文章

  1. 时序分析基本概念介绍Scenario
  2. Ngnix 的代码分析
  3. 华米在自主芯片和OS研发上取得突破,将成为又一个华为
  4. python HEIC 转jpg
  5. 在计算机桌面上的回收站作用是,计算机桌面回收站的设置(回收站的概念及设置、使用说明)...
  6. 计算机电源带不起来,电源板带不起负载维修思路总结
  7. iOS 气泡聊天效果
  8. 史上最简单的spark教程第二十三章-运行第一个机器学习Java和Python代码案例
  9. 计算搭积木是否能拼接成一个整体
  10. 详解中断系统 与 中断周期