news 2026/6/15 18:40:45

【牛客网-小红的k次方】:避免大数问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【牛客网-小红的k次方】:避免大数问题

题目描述

小红拿到了一个长为 n 的数组 a,定义数组中所有元素的乘积为 x。小红想知道,最大的满足 x 是 30 的 k 次方的倍数(形式化的,x \mod 30^k = 0)的 k 是多少?

题目链接:小红的k次方_牛客题霸_牛客网

输入格式

  • 第一行输入一个整数 n (1≦n≦2×10^5)

  • 第二行输入 n 个整数 ai (1≦ai≦10^9)

输出格式

  • 输出一个整数,代表最大的 k

示例

输入

4

30 15 2 7

输出

2

问题分析

  1. 数据规模大:n 最大可达2×10^5 ,aᵢ 最大可达10^9

  2. 乘积极大:直接计算所有数的乘积会得到天文数字,远超任何数据类型的范围

  3. 需要高效算法:必须在 O(n) 或 O(n log n) 时间内解决问题

解题思路

第一步:数学转化

30 的质因数分解:

30=2×3×530=2×3×5

30 的 k 次方:

30^k=(2×3×5)^k=2^k×3^k×5^k

第二步:整除条件分析

设数组所有元素的乘积为 x,要使 x 能被 30^k 整除,即:

xmod 30^k=0

这意味着:

  1. x 必须包含至少 k 个因子 2

  2. x 必须包含至少 k 个因子 3

  3. x 必须包含至少 k 个因子 5

第三步:得出关键结论

设数组所有数中:

  • 因子 2 的总个数为 cnt_2

  • 因子 3 的总个数为 cnt_3

  • 因子 5 的总个数为 cnt_5

那么最大的 k 满足:

k≤cnt2 , k≤cnt3 , k≤cnt5

因此:

max k = min⁡(cnt2,cnt3,cnt5)

第四步:算法设计

基于以上分析,我们不需要计算巨大的乘积 x,只需:

  1. 遍历数组中的每个数

  2. 统计每个数中因子 2、3、5 的个数

  3. 累加得到总个数

  4. 取三个总个数的最小值

代码实现

python

n=int(input()) arr=list(map(int,input().split())) a,b,c=0,0,0 for num in arr: while num%2==0: a+=1 num//=2 while num%3==0: b+=1 num//=3 while num%5==0: c+=1 num//=5 k=min(a,b,c) print(k)

复杂度分析

时间复杂度

  • 每个数需要被2、3、5整除若干次

  • 对于每个数,循环次数最多为 log2 ai + log3 ai + log5 ai

  • 总时间复杂度:O(n × log(max(a_i)))

  • 对于 n (1≦n≦2×10^5),完全可行

空间复杂度

  • 只需常数空间存储计数:O(1)

错误反思

错误1:直接计算乘积

问题:乘积 x 可能达到(10⁹)^{2×10⁵} = 10^{9 × 2×10⁵} = 10^{1.8×10⁶},远超任何数据类型范围。

错误2:二分查找法

虽然理论上可以用二分查找 k,但需要计算 30^k 和判断整除关系,同样面临大数问题,且效率不如直接统计。

总结

本题的核心在于:

  1. 数学转化:将整除问题转化为质因数统计问题

  2. 避免大数运算:通过统计因子个数代替实际计算乘积

  3. 理解整除的本质:a 整除 b 意味着 a 的所有质因子在 b 中都以足够的幂次存在

这种"避开直接计算,转为统计特征"的思路在算法竞赛中非常常见,特别是在处理大数、乘积、最大公约数等问题时非常有用。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 18:11:38

无需钥匙串快速创建 iOS 开发 / 发布证书 P12 CSR

在不少团队里,iOS 证书管理并不是只在一台 Mac 上完成的事情。 证书可能需要被多个构建节点使用,也可能需要在 Windows 或 Linux 环境下生成并分发。 问题往往出在钥匙串本身,它和 macOS 强绑定,不利于自动化,也不适合…

作者头像 李华
网站建设 2026/6/15 18:31:06

区块链交易所开发:为什么说这是数字金融时代的“新基建”?

引言:数字货币浪潮下的交易革命当比特币从“极客玩具”跃升为全球资产配置的新选项,当以太坊的智能合约催生出万亿级DeFi生态,数字货币交易已从边缘实验走向主流金融的核心舞台。据CoinGecko数据,全球数字货币交易所日均交易量已突…

作者头像 李华
网站建设 2026/6/15 13:17:27

三相计量芯片RN8302B驱动校正程序设计与实现

一、驱动程序架构 RN8302B的驱动程序需包含SPI通信模块、寄存器配置模块、数据采集模块和校准算法模块,其核心流程如下: 1. 初始化:配置SPI接口、复位芯片、设置工作模式。 2. 寄存器配置:设置通道使能、滤波参数、校准模式。 3. …

作者头像 李华
网站建设 2026/6/15 13:14:27

导师推荐!9大AI论文网站测评:研究生科研写作全攻略

导师推荐!9大AI论文网站测评:研究生科研写作全攻略 2026年AI论文写作工具测评:精准匹配科研需求的实用指南 在当前学术研究日益数字化的背景下,研究生群体面临着从选题构思到论文撰写全过程的多重挑战。文献检索效率低、写作思路…

作者头像 李华
网站建设 2026/6/15 15:55:05

小米MiMo-V2-Flash一步API实战:从入门到落地(附多场景代码案例)

前言:在上一篇文章中,我们已经对小米MiMo-V2-Flash大模型的核心特性、性能优势及一步API基础接入流程做了详细解析。对于开发者而言,掌握基础接入只是第一步,如何结合实际业务场景实现高效落地、规避开发踩坑,才是核心…

作者头像 李华
网站建设 2026/6/15 13:35:40

小学生厌学服务机构如何选择

在当今社会,小学生厌学不想上学的问题日益凸显,成为许多家长的心头大患。面对这一挑战,选择一家口碑好的矫正服务企业显得尤为关键。本文将探讨如何选择合适的矫正服务企业,并分享一些成功案例与方法论。一、行业现状与痛点分析据…

作者头像 李华