理解题目花费了点时间,按照要求来,利用相应数据结构的特性,本题的去重排序和按照顺序遍历的LinkedHashMap。

数据分类处理

http://www.nowcoder.com/questionTerminal/9a763ed59c7243bd8ab706b2da52b7fd

理解题目花费了点时间,按照要求来,利用相应数据结构的特性,本题的去重排序和按照顺序遍历的LinkedHashMap。

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()){
            int rn = sc.nextInt();
            String[] st = new String[rn];
            for(int i=0;i<rn;i++){
                st[i] =sc.next();
            }
            int jn = sc.nextInt();
            TreeSet<Integer> set = new TreeSet<Integer>();
            for(int i=0;i< jn;i++){
                set.add(sc.nextInt());
            }
            StringBuffer str = new StringBuffer();
            Iterator<Integer> iterator = set.iterator();
            while (iterator.hasNext()){
               String e = iterator.next().toString();
                str.append(getRes(e,st));
           }
            System.out.println(str.toString().split(" ").length+" "+str);
        }
    }
    public static StringBuffer getRes(String e,String[] st){
        StringBuffer res = new StringBuffer();
        LinkedHashMap<Integer,String> map = new LinkedHashMap<Integer, String>();
        for(int i=0;i<st.length;i++){
            if(st[i].contains(e)){
                map.put(i,st[i]);
            }
        }
        if(map.size()>0)
            res.append(e+" "+map.size()+" ");
            for(Map.Entry entry : map.entrySet()){
                res.append(entry.getKey()+" "+entry.getValue()+" ");
            }
        return res;
    }
}

全部评论

相关推荐

码农索隆:单休一个月少休息4天,一年就是48天,平时节假日,别人3天假期,单休的两天
点赞 评论 收藏
分享
05-26 10:24
门头沟学院 Java
qq乃乃好喝到咩噗茶:其实是对的,线上面试容易被人当野怪刷了
找工作时遇到的神仙HR
点赞 评论 收藏
分享
半解316:内容充实,细节需要修改一下。 1,整体压缩为一页。所有内容顶格。 2,项目描述删除,直接写个人工作量 修改完之后还需要建议,可以私聊
点赞 评论 收藏
分享
评论
10
3
分享

创作者周榜

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