CSDN 每日一题 去除整数

尝试好久,没有通过。 不知道问题出在哪里,请高人指点一下。

还觉得现学现用了前几天补习的hashMap,沾沾自喜了一会儿,但是结果很让人担心。示例都通不过~~

提示提高写作质量了,好吧,补充一些题目的要求:集合A中有1到n的自然数,给出m个整数,将集合A中 m个整数的倍数都去除,输出集合A最终剩余的元素个数。 题目和我描述的不太一样,我是把我的理解说出来的。说实话,CSDN的题目描述经常让人很难理解,不知道为什么,虽然是汉语,但是比leetcode上的英文题目还难理解,就是觉得有的地方没有说或明白,不知道这些题目是不是机器人编的 。是的话,还需要再好好调试一下~~


import java.util.ArrayList;
import java.util.Scanner;
import java.util.Map;
import java.util.HashMap;
import java.util.Set;

class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        
        String str_0 = scan.nextLine();
        String[] line_list_0 = str_0.trim().split(" ");        
        ArrayList<Integer> arr_temp = new ArrayList<>();
        for(int i = 0; i < line_list_0.length; i++){
            arr_temp.add(Integer.parseInt(line_list_0[i]));
        }
    

        int n = arr_temp.get(0);
		int m = arr_temp.get(1);

        
        String str_2 = scan.nextLine();
        String[] line_list_2 = str_2.trim().split(" ");        
        ArrayList<Integer> arr = new ArrayList<>();
        for(int i = 0; i < line_list_2.length; i++){
            arr.add(Integer.parseInt(line_list_2[i]));
        }
    

        scan.close();

        int result = solution(n, m, arr);

        System.out.println(result);

    }

    public static int solution(int n, int m, ArrayList<Integer> arr){
        int result = 0;

        // TODO: 请在此编写代码
        
        
        Map<Integer, Integer> nums = new HashMap<>();
        Map<Integer, Integer> dels = new HashMap<>();
        
       
        for( int i = 0; i < m; i ++){
           
           int j = n/arr.get(i);
            
           while( j > 0 ){
               nums.put( arr.get(i) ,j );
               j --;
           }
        }
        
        Set<Map.Entry<Integer, Integer>> entries = nums.entrySet();
        
        for(Map.Entry<Integer,Integer> entry : entries){
            dels.put( entry.getKey() * entry.getValue(),1);
        }
        
        result = n - dels.size();

        return result;
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
北航数值分析大作业第一题要求在CSDN上找到关于数值分析的学习资料。首先,CSDN是一个广受欢迎的技术社区,提供了大量的技术文章、教程和代码示例。因此,在CSDN上找到数值分析的学习资料并不困难。 首先,我可以通过CSDN的搜索功能,输入关键词“数值分析”来搜索相关的学习资料。搜索结果会显示一系列与数值分析相关的文章和教程。我可以根据内容的质量和适合自己的难度进行筛选。 其次,我可以查看CSDN中一些专栏或博客的数值分析分类。在这些专栏或博客中,经常会有数值分析方面的文章,可以从中获得更加系统和全面的学习资料。我可以关注一些高质量的专栏或博客,通过查询他们过往的文章,找到自己感兴趣的数值分析学习材料。 此外,CSDN还有一些论坛和问答社区,我可以在这些地方提问关于数值分析的问题,寻求其他技术人员的帮助和建议。这不仅可以加深自己对数值分析的理解,还可以扩展自己的网络,与更多的专业人士交流。 综上所述,北航数值分析大作业第一题要求在CSDN上找到关于数值分析的学习资料。通过利用CSDN的搜索功能,查找数值分析的相关文章和教程。同时,我还可以关注数值分析相关的专栏和博客,参与社区的讨论,获取更加全面和深入的学习资料。在这个过程中,也可以通过提问和交流,加深自己对数值分析的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不争之德

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值