【秋招笔试题】多多排序

解法:简单语法题

java 复制代码
package com.sky;

import java.util.*;

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

        int N = sc.nextInt();
        int M = sc.nextInt();

        List<String> words = new ArrayList<>(N);

        for (int i = 0; i < N; i++) {
            String word = sc.next();
            words.add(word);
        }

        Comparator<String> customComparator = (s1, s2) -> {
            boolean s1Contains = s1.contains("PDD");
            boolean s2Contains = s2.contains("PDD");
            if (s1Contains && !s2Contains) {
                return -1;
            } else if (!s1Contains && s2Contains) {
                return 1;
            } else {
                return s1.compareTo(s2);
            }
        };

        Collections.sort(words, customComparator);

        for (int i = 0; i < M; i++) {
            System.out.println(words.get(i));
        }

    }
}
相关推荐
东方-教育技术博主3 分钟前
AI 写一个可被 Blueprint 调用的角色技能系统
开发语言
华仔啊4 分钟前
前端不懂 Java?后端怕 CSS?这套AI全栈方案专治各种偏科
java·前端·后端
m0_748873551 小时前
C++与Rust交互编程
开发语言·c++·算法
今天和Aboo结婚了吗2 小时前
【Broker一重启消息没了:一次RabbitMQ非持久化+没开Confirm的血亏事故】
java·rabbitmq·messagequeue·bug排查
daidaidaiyu8 小时前
一文学习 工作流开发 BPMN、 Flowable
java
ZTLJQ8 小时前
序列化的艺术:Python JSON处理完全解析
开发语言·python·json
2401_891482178 小时前
多平台UI框架C++开发
开发语言·c++·算法
SuniaWang9 小时前
《Spring AI + 大模型全栈实战》学习手册系列 · 专题六:《Vue3 前端开发实战:打造企业级 RAG 问答界面》
java·前端·人工智能·spring boot·后端·spring·架构
sheji34169 小时前
【开题答辩全过程】以 基于springboot的扶贫系统为例,包含答辩的问题和答案
java·spring boot·后端