猿辅导8.26笔试

第一题,找出没有匹配上停用词的单词的最高频数,直接暴力
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Map;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int M = Integer.parseInt(br.readLine().trim());
        while(M -- > 0){
            String[] words = br.readLine().trim().split(" ");
            int N = Integer.parseInt(words[0]);
            String[] regs = br.readLine().trim().split(" ");
            int K = Integer.parseInt(regs[0]);

            Map<String, Integer> map = new HashMap<>();
            a : for (int i = 1; i <= N; i++) {
                String str = words[i].toLowerCase();
                for (int j = 1; j <= K; j++) {
                    if(fit(str, regs[j].toLowerCase())){
                        continue a;
                    }
                }
                map.put(str, map.getOrDefault(str, 0) + 1);
            }
            int max = 0;
            for(String str : map.keySet()){
                max = Math.max(map.get(str), max);
            }
            System.out.println(max);
        }
    }
    private static boolean fit(String str, String reg){
        if(str.length() != reg.length()){
            return false;
        }

        for(int i = 0; i < str.length(); i++){
            char c = reg.charAt(i);
            if(c != '?' && str.charAt(i) != c){
                return false;
            }
        }
        return true;
    }
}
第二题:数字K分解质因数,且都包含在数组中最小数组子集长度,暴力过
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int M = Integer.parseInt(br.readLine().trim());
        while(M-- > 0){
            String[] params = br.readLine().trim().split(" ");
            int K = Integer.parseInt(params[0]);
            int N = Integer.parseInt(params[1]);
            int[] arr = new int[N];
            boolean[] isPrime = new boolean[N];
            params = br.readLine().trim().split(" ");
            int minLen = Integer.MAX_VALUE;
            for (int i = 0; i < N; i++) {
                arr[i] = Integer.parseInt(params[i]);
                isPrime[i] = isPrime(arr[i]);
            }
            for(int i = 0; i < N; i++){
                if(!isPrime[i] || K % arr[i] != 0){
                    continue;
                }
                int temp = K / arr[i];
                if(temp == 1){
                    minLen = 1;
                    break;
                }
                for(int j = i + 1; j < N; j++){
                    if(!isPrime[j] || temp % arr[j] != 0){
                        continue;
                    }
                    temp /= arr[j];
                    if(temp == 1){
                        minLen = Math.min(minLen, j - i + 1);
                        break;
                    }
                }
            }
            System.out.println(minLen);
        }
    }
    private static boolean isPrime(int n){
        if(n == 1){
            return false;
        }
        for(int i = 2; i < (int)Math.sqrt(n) + 1; i++){
            if(n % i == 0){
                return false;
            }
        }
        return true;
    }
}
第三题:游乐园,不太会

#猿辅导笔试讨论##猿辅导笔试#
全部评论
uu,请问一下,为什么选择使用BufferedReader而不是Scanner呢?这两者有什么细节上的不同吗?
点赞 回复 分享
发布于 2022-08-27 09:31 陕西
大佬,请问一下选择题有一道程序题fun2(fun1(101))%4结果怎么得呢
点赞 回复 分享
发布于 2022-08-26 23:14 辽宁

相关推荐

bg27强双非本,目前在学习golang后端gin框架部分,在b站找了一个轮子项目敲了一下,技术栈是gin&nbsp;+&nbsp;gorm&nbsp;+&nbsp;mysql&nbsp;+&nbsp;redis。我目前的想法是这一个月学习408和go八股以及刷算法然后在12月找个寒假实习然后大三下开始准备考研。我是考研意愿比较强烈,想问一下我是应该all&nbsp;in其中一个方向吗,我感觉我实习对我考研来说也是没什么帮助的好像。
牛客28967172...:毕业工作,考研,考公是完全不同的方向。 99%的人拼尽全力也只能把一个做好(能做好都已经是佼佼者了,比如进进大厂,考985或者考公) 如果你确定要考研可以不用学任何就业技术框架,也不用实习经验,刷题背知识点就行,但注意必须考92院校起步,因为这个年代双非硕毕业后完全不如双非本(互联网行业),可以说双非硕在互联网就业完全是负收益
投递哔哩哔哩等公司10个岗位
点赞 评论 收藏
分享
用微笑面对困难:你出于礼貌叫了人一声大姐,大姐很欣慰,她真把你当老弟
点赞 评论 收藏
分享
评论
1
3
分享

创作者周榜

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