百度笔试 前端

我也不知道为什么,两个本地A,提交就0.0跪求大佬们能不能帮我看看为什么。泪崩😥

第二题:
import java.util.Scanner;

public class Main {

    static int find (int t,int []a){  //类似二分查找,找到刚好大一点的下标
        int be=0;int end=a.length-1;
        while(be<=end){
            int inter=(be+end)>>1;
            if(t<a[inter]){
                if(inter-1>be&&a[inter-1]>t)
                    end=inter-1;
                else {
                    return inter+1;
                }
            }
            else if(t>a[inter]){
                be=inter+1;
            }else
                return inter+1;
        }
        return -1;
    }


    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int T = sc.nextInt();

        while (T > 0) {

            int n = sc.nextInt();
            int m = sc.nextInt();
            int[] N = new int[n];
            int[] M = new int[m];
            for (int i = 0; i < n; i++) {
                N[i] = sc.nextInt();
            }
            for (int i = 0; i < m; i++) {
                M[i] = sc.nextInt();
            }
                       //Array.sort(M) //排序
            for (int i = 0; i < n; i++) {
                System.out.print(find(N[i], M));
                if (i < n - 1)
                    System.out.print(" ");
            }
            System.out.println();
            T--;
        }
    }
}                

第三题:优质奶牛区间

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int T = sc.nextInt();

        while (T > 0) {
            int n=sc.nextInt();
            int m=sc.nextInt();
            int a[]=new  int[n];
            for(int t=0;t<m;t++){
                int k=sc.nextInt();

                for(int i=0;i<k;i++){
                    int be=sc.nextInt();
                    int end=sc.nextInt();

                    while(be<=end){
                        a[be]++;
                        be++;
                    }
                }
            }
            StringBuilder s=new StringBuilder();
            int count=0;
            for(int i=0;i<n;i++){
                if(a[i]==m){
                    count++;
                    s.append(i);
                    if(i+1<n) s.append(" ");
                }
            }
            System.out.println(count);
            System.out.println(s.toString());
            T--;
        }
    }
}









#笔试题型##百度#
全部评论
第二题:角色匹配
1 回复 分享
发布于 2020-09-03 21:14
前端三道题全是0。奶牛那题应该是每组数据之后的k处理有点问题然而不会改,第二题完全没找到问题😥
点赞 回复 分享
发布于 2020-09-03 21:17

相关推荐

扭转乾坤_:现在企业都是学华为,一直通过丢池子里,最后捞
点赞 评论 收藏
分享
斑驳不同:还为啥暴躁 假的不骂你骂谁啊
点赞 评论 收藏
分享
1 3 评论
分享
牛客网
牛客企业服务