HJ25 数据分类处理 | 题解

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            int iNum = in.nextInt();
            int[] arrI = new int[iNum];
            for (int i = 0; i < iNum; i++) {
                arrI[i] = in.nextInt();
            }

            int rNum = in.nextInt();
            int[] arrR = new int[rNum];
            for (int i = 0; i < rNum; i++) {
                arrR[i] = in.nextInt();
            }

            Arrays.sort(arrR);
            List<Integer> list = new ArrayList<>();
            for (int i = 0; i < arrR.length; i++) {
                if (i > 0 && arrR[i] == arrR[i - 1])
                    continue;
                list.add(arrR[i]);
                List<Integer> tmp = new LinkedList<>();
                for (int j = 0; j < arrI.length; j++) {
                    if (Integer.toString(arrI[j]).contains(Integer.toString(arrR[i]))) {
                        tmp.add(j);
                        tmp.add(arrI[j]);
                    }
                }
                if (tmp.isEmpty()) {
                    list.remove(list.size() - 1);
                } else {
                    list.add(tmp.size() / 2);
                    list.addAll(tmp);
                }
            }
            StringBuilder str = new StringBuilder();
            str.append(list.size()).append(" ");
            for (int num : list) {
                str.append(num).append(" ");
            }
            System.out.println(str.substring(0, str.length() - 1));
        }
    }
}

全部评论

相关推荐

02-11 14:29
已编辑
字节跳动_QA
Edgestr:这种的写代码最狠了
点赞 评论 收藏
分享
码农索隆:以下是我以我微薄的认知提供的建议: 1.考个教师资格证,去当体育考试。 2.去健身房当健身教练(因为在我印象里面体育生身材都不错)。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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