民生银行提前批 “民芯计划” 技术岗笔试算法题

一共有两道题,第二题题没读太懂,当输入1的时候要求输出非空字符串数量,忽略了非空,导致ac14。

第一题ac   100  学生成绩排序问题
class Student{
    //学生类
    public String name;
    public int chinese;
    public int math;
    public int english;
    public int total;
    public int rank;
    public Student(String name,int chinese,int math,int english){
        this.name = name;
        this.chinese = chinese;
        this.math = math;
        this.english = english;
        this.total = this.chinese+this.math+this.english;
    }
    //最终输出的结果
    @Override
    public String toString(){
        StringBuilder sb = new StringBuilder();
        sb.append("rank:").append(rank).append(" ").
                append("name:").append(name).append(" ").
                append("total:").append(total).append(" ").
                append("chinese:").append(chinese).append(" ").
                append("math:").append(math).append(" ").
                append("english:").append(english);
        return sb.toString();

    }
}

public class T1 {
    public static void main(String[] args) throws IOException {
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        String str;
        while((str = bf.readLine()) !=null){
            Student stu[] = new Student[Integer.valueOf(str)];
            String []data;
            String name;
            int chinese,math,english;
            //处理输入
            for(int i=0;i<stu.length;i++){
                data = bf.readLine().split(" ");
                name = data[0];
                chinese = Integer.valueOf(data[1]);
                math = Integer.valueOf(data[2]);
                english = Integer.valueOf(data[3]);
                stu[i] = new Student(name,chinese,math,english);
            }
            //排序处理 重写Comparator
            Arrays.sort(stu, new Comparator<Student>() {
                @Override
                public int compare(Student o1, Student o2) {
                    if(o1.total!=o2.total){//总分
                        return o2.total-o1.total;
                    }else if(o1.chinese!=o2.chinese){
                        return  o2.chinese-o1.chinese;
                    }else if(o1.math != o2.math){
                        return  o2.math-o1.math;
                    }else if(o1.english!=o2.english){
                        return  o2.english-o1.english;
                    }else {
                        return o1.name.compareTo(o2.name);
                    }
                }
            });
            Student pre = stu[0];
            int rank = 1;
            stu[0].rank = rank;
            rank++;
            // 重点排序
            for(int i=1;i<stu.length;i++){
                if(stu[i].total!=pre.total||stu[i].chinese!=pre.chinese||stu[i].math!=pre.math||stu[i].english!=pre.english){
                    stu[i].rank = rank;
                }else{
                    //前后两个相同分数
                    stu[i].rank = pre.rank;
                }
                pre = stu[i];
                rank++;
            }
            for(int i=0;i<stu.length;i++){
                System.out.println(stu[i]);
            }

        }
    }
}





第二题:
其实就是简单的if else判断
class Main {
    public static void main(String[] args) throws IOException {
        String str;
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));

        while((str=bf.readLine())!=null){
            if(str.equals("1")){
                int count = 0;
                while((str =  bf.readLine())!=null){
                    if(str.equals("") == false)//一定要判读是否为空
                    count++;
                }
                System.out.println(count);
            }else if(str.equals("Q")){
                System.out.println("Quit");
            }else {
                System.out.println("Wrong input,Please re-choose");
                System.out.println("Menu Function Test");
                System.out.println("1: Count Lines");
                System.out.println("Q: Quit");
            }
        }
    }
}





#民生银行民芯计划##民生银行##笔试题目#
全部评论
楼主这是实习岗位吗?我投的实习还没反应
点赞 回复 分享
发布于 2021-07-07 15:28
有没有收到面试通知的😂
点赞 回复 分享
发布于 2021-07-01 00:45

相关推荐

01-30 09:45
燕山大学 Java
喵_coding:这种直接跑就完事了 哪有毕业了才签合同 任何offer和三方都没有的
点赞 评论 收藏
分享
tongx_:海投吧同学,面试中能学到更多东西呢,比如拷打项目,要是觉得没准备好就可以从中厂开始呢,但是腾讯都是无限复活
点赞 评论 收藏
分享
评论
3
18
分享

创作者周榜

更多
正在热议
更多
# 春招至今,你的战绩如何? #
4184次浏览 33人参与
# 你的实习产出是真实的还是包装的? #
980次浏览 25人参与
# 巨人网络春招 #
11131次浏览 221人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
6833次浏览 35人参与
# 简历第一个项目做什么 #
31213次浏览 311人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
186290次浏览 1113人参与
# 米连集团26产品管培生项目 #
3677次浏览 162人参与
# 面试紧张时你会有什么表现? #
30294次浏览 188人参与
# 简历中的项目经历要怎么写? #
309273次浏览 4145人参与
# 网易游戏笔试 #
6299次浏览 83人参与
# 职能管理面试记录 #
10669次浏览 59人参与
# 把自己当AI,现在最消耗你token的问题是什么? #
6795次浏览 154人参与
# 从哪些方向判断这个offer值不值得去? #
56685次浏览 357人参与
# 腾讯音乐求职进展汇总 #
160374次浏览 1105人参与
# 小红书求职进展汇总 #
226823次浏览 1356人参与
# AI时代,哪些岗位最容易被淘汰 #
62226次浏览 723人参与
# 你怎么看待AI面试 #
179177次浏览 1160人参与
# 正在春招的你,也参与了去年秋招吗? #
362424次浏览 2631人参与
# 你的房租占工资的比例是多少? #
92118次浏览 896人参与
# 机械求职避坑tips #
94389次浏览 567人参与
# 校招笔试 #
465564次浏览 2948人参与
# 面试官最爱问的 AI 问题是...... #
26974次浏览 833人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务