1、题目描述
疫情过后,希望小学终于又重新开学了,三年二班开学第一天的任务是将后面的黑板报重新制作。
黑板上已经写上了N个正整数,同学们需要给这每个数分别上一种颜色。
为了让黑板报既美观又有学习意义,老师要求同种颜色的所有数都可以被这种颜色中最小的那个数整除。
现在请你帮帮小朋友们,算算最少需要多少种颜色才能给这N个数进行上色。
2、输入描述
第一行有一个正整数N,其中。
第二行有N个int型数(保证输入数据在[1,100]范围中),表示黑板上各个正整数的值。
3、输出描述
输出只有一个整数,为最少需要的颜色种数。
用例:
输入
7
58 14 20 67 41 4 63
输出
6
ps:20能被4整除,可以用同种颜色,其他的分别一种颜色
温馨提示!!!
华为OD机试考试官方会对考生代码查重。华为od机试因为有题库所以有很大的概率抽到原题。如果碰到了题库中的原题,千万不要直接使用题解中的代码,一定要做些修改,比如代码中的变量名,除此之外,代码的组织结构和逻辑也要进行一些改变,所以在日常的刷题中,要提前编写好属于自己的代码。
4、题解
先排序,然后循环遍历数组中的每个数字,依次进行整除判断,能整除则继续获取下一个数字,否则将颜色数量+1
代码如下:
public static void main(String[] args) {
Scanner sc = new Scanner(System.