搜狐这1个半小时的笔试 35分完成,好简单,附题解

这个编程题测试点有点水啊
import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        if(n == 0){
            System.out.println(0);
            return;
        }
        HashMap<Integer, Integer> day = new HashMap<>();
        HashMap<Integer, Integer> task = new HashMap<>();
        int res = 0;
        int maxday = -1;
        for(int i = 0 ; i < n ; i++){
            int  type = sc.nextInt();
            if(type == 1){
                int start = sc.nextInt();
                int end = sc.nextInt();
                maxday = Math.max(maxday, end);
                int up = sc.nextInt();
                for(int j = start ;j <= end; j++){
                    if(!day.containsKey(j)){
                        day.put(j, up);
                    }else{
                        int temp = Math.max(day.get(j), up);
                        day.put(j, temp);
                    }
                }

            }else if(type == 2){
                int taskday = sc.nextInt();
                int taskup = sc.nextInt();
                maxday = Math.max(maxday, taskday);
                if(task.containsKey(taskday)){
                    int now = task.get(taskday);
                    task.put(taskday, taskup + now);
                }else{
                    task.put(taskday, taskup);
                }

            }
        }
        for(int i = 1; i <= maxday ; i++){
            if(day.containsKey(i)){
                res += day.get(i);
            }
            if(task.containsKey(i)){
                res += task.get(i);
            }
        }
        System.out.print(res);
    }
}

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int k = sc.nextInt();
        Queue<Integer> q = new PriorityQueue<Integer>();
        //ArrayList<Integer> list = new ArrayList<Integer>();
        for(int i =0 ; i < n ; i++){
            q.add(sc.nextInt());
        }
        for(int i = 0 ; i < k - 1; i++){
            System.out.print(q.poll() + ",");
        }
        System.out.print(q.poll());
    }
}

全部评论
2333活捉邻居,确实有点简单,不优化都ac...懒得优化了
点赞 回复 分享
发布于 2018-04-14 17:08
第二个题 输入n个数 找出最小k个数,怎么在本地可以通过,在网站上就ac不到呢?
点赞 回复 分享
发布于 2018-04-14 17:14
据说搜狐面试超级难…
点赞 回复 分享
发布于 2018-04-14 17:17
不定项都是网络的题,也是醉了,没学过
点赞 回复 分享
发布于 2018-04-14 17:19
可以
点赞 回复 分享
发布于 2018-04-14 17:31
第一题我都没读懂成长值到底咋算,我都没算出49.求简答
点赞 回复 分享
发布于 2018-04-14 17:39
感觉凉了,第一题输入处理出了个小错误,只过20%
点赞 回复 分享
发布于 2018-04-14 17:47
记错了笔试时间,难得一次简单的笔试就这么错过了,好可惜啊
点赞 回复 分享
发布于 2018-04-14 18:02
比楼主晚了20分钟交卷。。
点赞 回复 分享
发布于 2018-04-14 18:23

相关推荐

点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务