洛谷P1134阶乘问题(数论,末尾0的个数变形,思维转换)
题目链接:https://www.luogu.org/problemnew/show/P1134
读完这道题发现它和51nod1003阶乘后面0的数量非常相似,只不过它变形了一下,要求你对2*5产生0有更加深刻的理解(0可以消掉,既然求非0位也就不必再乘,把多出来的2乘上即可)!
1 #include <iostream> 2 using namespace std; 3 typedef long long ll; 4 5 int main() 6 { 7 ios::sync_with_stdio(false); cin.tie(0); 8 9 ll n; 10 cin>>n; 11 12 ll x=n,s2=0,s5=0;//1.求多出的2个数(也可以循环找每个因子是2,5的加起来算,只不过这样算比较快!) 13 while(x) 14 { 15 s2+=x/2; 16 x/=2; 17 } 18 x=n; 19 while(x) 20 { 21 s5+=x/5; 22 x/=5; 23 } 24 ll s=s2-s5; 25 26 ll ans=1; 27 for(ll i=2;i<=n;i++)//2.暴力计算除去2,5的阶乘最后一位 28 { 29 ll t=i; 30 while(t%2==0) t/=2; 31 while(t%5==0) t/=5; 32 33 ans=ans*t%10; 34 } 35 for(ll i=1;i<=s;i++) ans=ans*2%10;//3.多余的2*上(因为它影响着整个结果,也影响着最后一位) 36 37 cout<<ans<<endl; 38 39 return 0; 40 }
完。
转载于:https://www.cnblogs.com/redblackk/p/9951642.html
洛谷P1134阶乘问题(数论,末尾0的个数变形,思维转换)相关推荐
- 统计阶乘结果的末尾0的个数
统计结成结果的末尾0的个数 今天看到一道题目,是让求解 1024! 末尾的0的个数.对于这个问题,作者首先想到了蛮力法..先将阶乘的结果计算出来放入数组然后统计末尾0的个数.这样做的话首先得先进行较大 ...
- c语言 n阶阶乘尾0个数,计算n的阶乘(n!)末尾0的个数
题目: 给定一个正整数n,请计算n的阶乘n!末尾所含有"0"的个数. 举例: 5!=120,其末尾所含有的"0"的个数为1: 10!= 3628800,其末尾所 ...
- 阶乘末尾 0 的个数
整数区间内整数的因子的个数 如求 100 的阶乘末尾 0 的个数: 思路:一个数 n 的阶乘末尾有多少个 0 取决于从 1 到 n 的各个数的因子中 2 和 5 的个数((2, 5) 构成的对的个数) ...
- 求阶乘N!末尾0的个数
POJ上有这个题目.http://poj.org/problem?id=1401.去掉一大堆没有用的信息,POJ的描述如下: For example, they defined the functio ...
- 求n的阶乘末尾0的个数
输入一个正整数n,求n!(即阶乘)末尾有多少个0? 比如: n = 10; n! = 3628800,所以答案为2. 思路:末尾0的个数就是指这个数总共有几个10因子,而10又能表示成2和5的乘积.假 ...
- 滴滴2017校园招聘编程题——阶乘末尾0的个数
1.题目如下图所示: 2.分析: 这个题目描述的很简单,思路看似也很清晰,我们第一想到的肯定就是正常计算和统计--先计算N!阶乘的结果,然后统计结果末尾0的个数.看似这是一个很好的也很 ...
- 阶乘末尾0的个数(java)
从输入中读取一个数n,求出n!中末尾0的个数. 输入格式: 输入有若干行.第一行上有一个整数m,指明接下来的数字的个数.然后是m行,每一行包含一个确定的正整数n,1<=n<=1000000 ...
- C++版本计算n阶乘末尾0的个数原理讲解及代码实现
C++版本计算n阶乘末尾0的个数原理讲解及代码实现 /*! * Copyright (c) 2020,ZYF. * All Rights Reserved. * * \file Factorial.c ...
- 牛客小白月赛6 水题 求n!在m进制下末尾0的个数 数论
链接:https://www.nowcoder.com/acm/contest/135/C 来源:牛客网 题目描述 其中,f(1)=1;f(2)=1;Z皇后的方案数:即在Z×Z的棋盘上放置Z个皇后,使 ...
最新文章
- 【CVPR2020-中科院-腾讯优图】基于注意力卷积二叉神经树的细粒度视觉分类
- ES6中的promise、async、await用法详解
- 欢迎大家加入我的圈子
- android自定义组合view,自定义View之组合View
- ODrive踩坑(三)AS5047P磁编码器的ABI接口
- Linux 基本命令不能用的解决方法
- 快速解决低版本Xcode不支持高版本iOS真机调试问题
- 从代码到300优质客户,用户画像在销售的实战应用
- 疑 Android N 截图曝光,通知栏对比上一代变了不少
- imsi、 ICCID、ki、IMEI
- Qt Data Visualization 3D可视化
- 国内wifi用不了谷歌_如何使用Google Wifi阻止不适当的网站
- 准备给ubuntu18.04安装杀毒软件
- [HTML] HTML简单实现网络测速
- 中国能否在5G占据领先优势,还得看中国移动
- 大数据架构师拿年薪50W的方法诀窍
- 王爽汇编语言 实验8
- 学python能做什么兼职-初学Python到月入过万最快的兼职途径(纯干货)
- spongycastle加密算法
- foss测试_FOSS – Java开发人员的最好朋友
热门文章
- 【数据结构和算法笔记】:稀疏矩阵的存储结构详解
- JAVA编写的一个简单的Socket实现的HTTP响应服务器
- java_interface的用法_Java注释@interface的用法
- gif 动态加载_搞笑GIF:这个游戏最大的成功就是失败!
- PLSQL 缺少MSVCR120.dll
- Windows由于在创建转储期间出错,创建转储文件失败导致的蓝底白字蓝屏重启,最全细解决方案
- 【空间】C++内存管理
- 计算机硬件知识大赛,计算机知识技能大赛.doc
- mysql_num_fielfs_mysql_num_fields
- 高斯消元解模同余方程组