个人2021-08-21网易云java后端开发编程笔试题目

73 篇文章 8 订阅

在这里插入图片描述

一、求两个数和比一个值小所有情况

题目:给定一个数组,求所有满足两个数之和小于等于一个指定值的数目
如:
输入:
1 2 3
5
输出:3
描述: 【1,2】【1,3】【2,3】

代码:

Scanner sc = new Scanner(System.in);
        String nums = sc.nextLine();
        Integer ans = 0;
        Integer num = sc.nextInt();
        String[] s = nums.split(" ");
        ArrayList<Integer> list = new ArrayList<>();

        for (int i = 0; i < s.length; i++) {
            list.add(Integer.parseInt(s[i]));
        }

        for(int i =0; i<list.size();i++){
            for(int j =1; j<list.size()-1;j++){
                if(list.get(i) + list.get(j) <= num){
                    ans++;
                }
            }
        }
        System.out.println(ans);

二、孩子座一圈年龄大的比小的试卷要多

题目描述:一群孩子围坐在一圈,孩子手里至少有一张试卷,孩子年龄大的必须必年龄小的试卷多,请问,至少有多少张试卷?

输入:1 1 1
输出:3

输入: 1 2 3
输出:6

代码思想:先让所有孩子的试卷都为1,第一个孩子的试卷必须为1,和输入的集合中的年龄作比较,如果年龄相同,试卷不变,如果年龄大与前一个,则相应改变试卷数量+1.

Scanner sc = new Scanner(System.in);
        String nums = sc.nextLine();
        int ans = 0;
        String[] s = nums.split(" ");
        ArrayList<Integer> list = new ArrayList<>();

        for (int i = 0; i < s.length; i++) {
            list.add(Integer.parseInt(s[i]));
        }
        // 排序 1 2 2 3 4 5 6
        Collections.sort(list);

        ArrayList<Integer> list1 = new ArrayList<>();
        for (int i = 0; i < list.size(); i++) {
           list1.add(1);
        }


        for (int i = 0; i < list.size() - 1; i++) {
            if (list.get(i) < list.get(i + 1)) {
                list1.set(i+1,list1.get(i)+1);
            }
        }

        for (int i = 0; i < list1.size(); i++) {
            ans += list1.get(i);
        }

        return ans;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Coding路人王

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

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

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

打赏作者

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

抵扣说明:

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

余额充值