您的位置:首页 > 其它

PAT-Course List for Student (25)

2016-03-10 14:01 369 查看
题意:

模拟课程统计

解答:

本题和PAT-Student for Course List需求相反,那题用了一个ArrayList里面套了几个ArrayList,本题由于要有名字(String)作为索引,所以使用HashMap,再在里面套一个ArrayList。

具体的java代码:

import java.util.*;
public class Main{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
int N=in.nextInt();
int K=in.nextInt();
HashMap<String,ArrayList<Integer>> map=new HashMap<String,ArrayList<Integer>>();
for(int i=0;i<K;i++){
int c=in.nextInt();
int num=in.nextInt();
for(int j=0;j<num;j++){
String name=in.next();
if(map.get(name)==null){
map.put(name,new ArrayList<Integer>());
}
map.get(name).add(c);
}
}
for(int i=0;i<N;i++){
String temp=in.next();
System.out.print(temp+" ");
ArrayList<Integer> list=map.get(temp);
if(list==null)
{
System.out.println(0);
continue;
}
System.out.print(list.size());
Collections.sort(list);
for(int j=0;j<list.size();j++){
System.out.print(" "+list.get(j));
}

System.out.println();
}
in.close();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: