C++ 直接输出代码略过思路给定n个正整数每个正整数都包含若干种质因子现在小明想知道这些质因子中哪种质因子出现的次数最多注意每个数字中出现的每种质因子只统计一次?输入描述输入数据共两行。第一行包含一个整数n表示数字个数。第二行包含以空格隔开的n个整数每个数字在2~100000之内。输出描述输出一个正整数表示出现最多的质因子如果有多个质因子出现一样多输出最小的那一个。样例1输入42 6 8 10输出
思路:对于每个数,我们可以对其进行质因数分解,然后统计每个质因子出现的次数。最后找到出现次数最多的质因子即可。对于每个数的质因数分解,可以使用试除法,也可以使用线性筛。这里我们使用线性筛,因为它的时间复杂度更小。
Code:
原文地址: https://www.cveoy.top/t/topic/gQyJ 著作权归作者所有。请勿转载和采集!