算法:数字涂色

简介: 算法:数字涂色

疫情过后希望小学终于又重新开学了

3年2班开学第一天的任务是

将后面的黑板报重新制作

黑板上已经写上了N个正整数

同学们需要给这每个数分别上一种颜色

为了让黑板报既美观又有学习意义

老师要求同种颜色的所有数都可以被这个颜色中最小的那个数整除

现在帮小朋友们算算最少需要多少种颜色,给这N个数进行上色

输入描述

第一行有一个正整数N

其中 1 <= n <=100

第二行有N个int型数,保证输入数据在[1,100]范围中

表示黑板上各个正整数的值

输出描述

输出只有一个整数,为最少需要的颜色种数

输入

3

2 4 6

输出

1

说明:

所有数都能被2整除

输入

4

2 3 4 9

输出

2

说明:

2与4涂一种颜色,4能被2整除

3与9涂另一种颜色,9能被3整除

不能涂同一种颜色

import java.util.*;
public class Main3 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String nStr = in.nextLine();
        String[] nums = in.nextLine().split(" ");
        in.close();
        TreeSet<Integer> ints = new TreeSet<>();
        for (String num : nums) {
            ints.add(Integer.parseInt(num));
        }
        if (ints.contains(1)) {
            System.out.println(1);
            ints.remove(1);
            return;
        }
        ArrayList<Integer> intList = new ArrayList<>(ints);
        for (int i = 0; i < intList.size(); i++) {
            Integer cur = intList.get(i);
            for (int j = i + 1; j < intList.size(); ) {
                if (intList.get(j) % cur == 0) {
                    intList.remove(j);
                } else j++;
            }
        }
        System.out.println(intList.size());
    }
}


相关文章
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
Transformer架构:重塑现代AI的核心引擎
Transformer架构:重塑现代AI的核心引擎
715 98
|
Web App开发 JSON JavaScript
深入浅出:Node.js后端开发入门与实践
【10月更文挑战第4天】在这个数字信息爆炸的时代,了解如何构建一个高效、稳定的后端系统对于开发者来说至关重要。本文将引导你步入Node.js的世界,通过浅显易懂的语言和逐步深入的内容组织,让你不仅理解Node.js的基本概念,还能掌握如何使用它来构建一个简单的后端服务。从安装Node.js到实现一个“Hello World”程序,再到处理HTTP请求,文章将带你一步步走进Node.js的大门。无论你是初学者还是有一定经验的开发者,这篇文章都将为你打开一扇通往后端开发新世界的大门。
|
文字识别 API
印刷文字识别操作报错合集之遇到“unmatchedImageType”错误,该如何解决
在使用印刷文字识别(OCR)服务时,可能会遇到各种错误。例如:1.Java异常、2.配置文件错误、3.服务未开通、4.HTTP错误码、5.权限问题(403 Forbidden)、6.调用拒绝(Refused)、7.智能纠错问题、8.图片质量或格式问题,以下是一些常见错误及其可能的原因和解决方案的合集。
|
JavaScript
Ant design vue 样式调整(包含导航栏、a-table表格、分页)
Ant design vue 样式调整(包含导航栏、a-table表格、分页)
2029 1
|
存储 Linux 网络安全
|
机器学习/深度学习 存储 前端开发
使用Tensorflow实现的MTCNN和MobileFaceNet实现的人脸识别系统GUI界面 附代码 详细教程
使用Tensorflow实现的MTCNN和MobileFaceNet实现的人脸识别系统GUI界面 附代码 详细教程
778 0
使用Tensorflow实现的MTCNN和MobileFaceNet实现的人脸识别系统GUI界面 附代码 详细教程
|
算法 Java C++
从0到1学习Yalmip工具箱(1)-入门学习
Matlab+Yalmip求解优化问题(1)-入门学习 包括Yalmip工具箱的下载与安装、Yalmip使用方法介绍与3个测试题
|
弹性计算 关系型数据库 测试技术
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
|
存储 缓存 JSON
前端面试题汇总大全 -- 持续更新!(四)
前端面试题汇总大全 -- 持续更新!
290 0

热门文章

最新文章