题解 | #数据分类处理#

数据分类处理

https://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd

import java.math.*;
import java.util.*;
import java.util.concurrent.*;
import java.util.concurrent.atomic.*;
import java.util.stream.*;
import java.util.regex.*;
import java.util.function.*;

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

        int countI = in.nextInt();
        String[] arrI = new String[countI];
        for (int i = 0; i < countI; i++) {
            arrI[i] = in.next();
        }

        int countR = in.nextInt();
        List<Integer> arrR = new ArrayList<>();
        for (int i = 0; i < countR; i++) {
            arrR.add(in.nextInt());
        }
        arrR = arrR.stream().distinct().sorted().collect(Collectors.toList());

        List<String> list = new ArrayList<>();
        for (int i = 0; i < arrR.size(); i++) {
            List<String> l = new ArrayList<>();
            String rule = String.valueOf(arrR.get(i));
            for (int j = 0; j < arrI.length; j++) {
                if (arrI[j].contains(rule)) {
                    l.add(String.valueOf(j));
                    l.add(arrI[j]);
                }
            }
            if (l.size() > 0) {
                list.add(rule);
                list.add(String.valueOf(l.size() / 2));
                list.addAll(l);
            }
        }

        System.out.printf("%d %s", list.size(), String.join(" ", list));
    }
}


全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务