微众银行笔试9.3 Java开发

第一题,HashSet

import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class Main1 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int[] arr = new int[n];
        for (int i = 0; i < n; i++) {
            arr[i] = in.nextInt();
        }
        Set<Integer> cad = new HashSet<>();
        int count = 0;
        for (int i = 0; i < n; i++) {
            if (!cad.contains(arr[i])) {
                cad.add(arr[i]);
                count++;
            } else {
                break;
            }
        }
        System.out.println(count);
    }
}

第二题,主要思路是先将输入的数组排序,然后遍历数组,如果当前元素小于等于前一个元素,则将其增加到前一个元素加一的大小,并累加所需的橡皮泥数量。

import java.util.*;
public class Main2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] a = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }
        Arrays.sort(a);
        long ans = 0;
        for (int i = 1; i < n; i++) {
            if (a[i] <= a[i - 1]) {
                ans += a[i - 1] - a[i] + 1;
                a[i] = a[i - 1] + 1;
            }
        }
        System.out.println(ans);
    }
}

第三题,将问题转化为求解有多少个子区间的和等于 u/v * 子区间长度。然后,前缀和。

import java.util.Scanner;
import java.util.HashMap;

public class Main3 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int u = sc.nextInt();
        int v = sc.nextInt();
        int[] a = new int[n + 1];
        for (int i = 1; i <= n; i++) {
            a[i] = sc.nextInt();
        }
        long ans = 0;
        HashMap<Long, Integer> map = new HashMap<>();
        map.put(0L, 1);
        long sum = 0;
        for (int i = 1; i <= n; i++) {
            sum += a[i] * v - u;
            if (map.containsKey(sum)) {
                ans += map.get(sum);
                map.put(sum, map.get(sum) + 1);
            } else {
                map.put(sum, 1);
            }
        }
        System.out.println(ans);
    }
}

全部评论
互联网金融行业考虑不,招联金融,base深圳, 招商银行和联通组建 国内消费金融top 有开发 产品 运营岗https://www.nowcoder.com/share/jump/2960110952044427369
1 回复 分享
发布于 2023-09-06 12:40 广东
第三题直接暴力两层循环a出来80%
1 回复 分享
发布于 2023-09-04 09:35 山东
您好,有兴趣投递中金所技术公司吗,投递连接https://neitui.italent.cn/cffexit/sharejobs?shareId=cf9ba558-9b4e-4f46-a803-a01c64bd37c8,具体可以看我主页哦
点赞 回复 分享
发布于 2023-09-05 07:22 上海
这第一题,这样做不合适吧?
点赞 回复 分享
发布于 2023-09-04 16:23 陕西
你好,sum+=a【i】✘v-u这一步有一点看不懂,是怎么转化的呢
点赞 回复 分享
发布于 2023-09-03 23:08 重庆
我第二题和你写的一样,为什么只过了27%?我的ans是int类型,你的是long类型,别的都一样
点赞 回复 分享
发布于 2023-09-03 22:42 北京

相关推荐

就前几天旅游的时候,打开抖音就经常刷到这类视频:以前是高学历学生、老师、主持人,现在做着团播、擦边主播的工作,以及那些经过精心包装的“职业转型”故事——从铺天盖地的VLOG到所谓的“04年夜场工作日记”,这些内容在初中升学、高考放榜等关键时间节点持续发酵。可以说非常直接且精准地在潜移默化地影响着心智尚未成熟的青少年,使其对特殊行业逐渐脱敏。那我就想问了:某些传播公司、平台运营者甚至某些夜场的老板,你们究竟在传递怎样的价值观?点开那些视频,评论区里也是呈现明显的两极分化:一种是​​经济下行论​​:“现在就业市场已经艰难到这种程度了吗?”​​一种是事实反驳派​​:这些创作者往往拥有名校背景,从事着...
牛客刘北:被环境教育的,为了能拿到足够的钱养活自己,不甘心也得甘心,现在的短视频传播的思想的确很扭曲,但是很明显,互联网玩上一年你就能全款提A6,但你全心全意不吃不喝工作一年未必能提A6,但是在高考中考出现这个的确很扭曲,在向大家传播“不上学,玩互联网也可以轻松年入百万”,不是人变了,是社会在变
预测一下26届秋招形势
点赞 评论 收藏
分享
07-02 18:09
门头沟学院 Java
苍穹外卖和谷粒商城这俩是不是烂大街了,还能做吗?
想去重庆的鸽子在吐槽:你不如把这俩做完自己搞明白再优化点再来问 何必贩卖焦虑
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷...:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
14
20
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务