首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
阶乘末尾非零数字
[编程题]阶乘末尾非零数字
热度指数:10865
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 256M,其他语言512M
算法知识视频讲解
给定一个正整数
,记其阶乘为:
。
请你输出
的十进制表示中,从右往左数第一个
非零
数字的数值。
输入描述:
在一行上输入一个整数
。
输出描述:
输出一个整数,代表
末尾第一个非零数字。
示例1
输入
6
输出
2
说明
当
时,
,末尾第一个非零数字为
。
示例2
输入
10
输出
8
说明
当
时,
,末尾第一个非零数字为
。
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(5)
邀请回答
收藏(66)
分享
提交结果有问题?
19个回答
15篇题解
开通博客
1人2人3人
发表于 2025-07-18 08:47:47
import java.util.*; public class Main { static class Solution { public int lastNonZeroDigit(int n) { // n2表示因子2的个数,n5表示因子5的个数
展开全文
Silencer76
发表于 2025-07-08 18:12:06
题目链接 HIGH3 阶乘末尾非零数字 题目描述 给定一个正整数 n,请求出 n! (n的阶乘) 的十进制表示中,从右往左数第一个非零的数字。 解题思路 这个问题的核心挑战在于 n! 的值会非常快地增长,对于稍大的 n(例如 n=20),其阶乘结果就会超出标准64位整型(long long)的存储范
展开全文
_Bingbong
发表于 2024-12-31 01:22:12
解题思路 要找到 末尾的第一个非零数字,关键是理解: 末尾的0是由因子2和5相乘产生的 需要分别统计 中因子2和因子5的个数 其他因子相乘的结果对最后一个非零数有影响 具体步骤: 统计 中因子2和因子5的个数 计算去除这些因子后,其他数字相乘的最后一位 如果因子2比因子5多,需要补充乘以
展开全文
丨阿伟丨
发表于 2025-08-28 16:15:37
题目链接 阶乘末尾非零数字 题目描述 给定一个正整数 ,记其阶乘为:。 请你输出 的十进制表示中,从右往左数第一个非零数字的数值。 输入: 一行一个整数 () 输出: 一个整数,代表 末尾第一个非零数字 解题思路 这道题要求我们计算 的最后一个非零数字。当 很大时,直接计算 会溢
展开全文
ch1ld
发表于 2025-10-24 17:48:20
题意:求 末尾非零数 题解参考了前排大佬 丨阿伟丨 的代码 题意即求 注意到,任何一个偶数 乘 6 所得数的个位不变,为什么呢?我们考虑中国剩余定理 根据 那么 对于 的情况, 必然为偶数,因此 ,因此求一个偶数 模 10,即求 那么本题就可以这么做 注意 ,因此我们仅需考虑
展开全文
玄骨
发表于 2025-10-23 19:42:22
#include<bits/stdc++.h> using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(0); int n; cin>>n; int n
展开全文
bing糖雪狸
发表于 2025-10-23 08:58:21
问题分析 对于较小的 n(如 n ≤ 20),我们可以直接计算出 n! 的值并从后往前找第一个非零数字: long long factorial(long long n) { long long ans = 1; for (int i = 1; i <= n; ++i) {
展开全文
Xiettt
发表于 2026-03-22 01:14:09
#include<bits/stdc++.h> using namespace std; using ui=unsigned int; using ll=long long; using ull=unsigned long long; using i128=__int128_t; us
展开全文
在刷代码的ssr很坚定
发表于 2025-10-23 22:02:39
这里本人采取递归与记忆化递归来解决此题,多说无益请看代码:递归#include<bits/stdc++.h>using namespace std;long long solve(int n) { if (n == 0 || n == 1) return 1; long lo
展开全文
牛客363602688号
发表于 2026-04-03 22:52:45
#include <algorithm> #include<bits/stdc++.h> using namespace std; const long long mod=10000000000; long long jiechen(int n) { long lon
展开全文
问题信息
C++工程师
iOS工程师
安卓工程师
快手
运维工程师
前端工程师
算法工程师
测试工程师
PHP工程师
2019
基础数学
数学
Java工程师
上传者:
小小
难度:
19条回答
66收藏
10245浏览
热门推荐
通过挑战的用户
查看代码
我想进海康威视
2022-08-11 15:42:14
布加迪.威龙
2022-08-08 20:13:08
科大无颜祖
2022-06-28 17:24:58
MC枫少
2022-06-16 16:01:05
无奋斗不青春!
2022-06-01 00:59:07
相关试题
以下关于非对称加密的说法错误的是
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
测试工程师
快手
2019
评论
(1)
牛牛的超市
动态规划
基础数学
评论
(5)
(verbal)最近的研究显示,许...
言语理解与表达
2019
普华永道
人力资源
审计
税务服务
风险管理
管理咨询
行政管理
评论
(2)
来自
职能类模拟题14
下列不属于分区表的优势是?
数据库
评论
(1)
在Vue组件销毁时,关于清除定时器...
Vue
评论
(1)
阶乘末尾非零数字
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
6
2
10
8