题解 | #数据分类处理#
数据分类处理
https://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
//一步步模拟即可
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
int nr = in.nextInt();
int[] rs = new int[nr];
for(int i=0 ; i<nr ; ++i){
rs[i] = in.nextInt();
}
int ni = in.nextInt();
int[] is = new int[ni];
for(int i=0 ; i<ni ; ++i){
is[i] = in.nextInt();
}
int count=0;
Arrays.sort(is);
List<List<Integer>> res = new ArrayList<List<Integer>>();
for(int i=0 ; i<is.length ; ++i){
res.add(new ArrayList<>());
if(i>0 && is[i]==is[i-1]){
continue;
}
String I = String.valueOf(is[i]);
for(int j=0 ; j<rs.length ; ++j){
String r = String.valueOf(rs[j]);
if(r.contains(I)){
res.get(i).add(j);
res.get(i).add(rs[j]);
count+=2;
}
}
if(res.get(i).size()>0){
count+=2; //增加i的那个数
}
}
//System.out.println(res);
System.out.print(count+" ");
for(int i=0 ; i<res.size() ; ++i){
if(res.get(i).size()>0){
System.out.print(is[i]+" "+(res.get(i).size()/2)+ " ");
for(int j=0 ; j<res.get(i).size() ; ++j){
System.out.print(res.get(i).get(j)+" ");
}
}
}
}
}
查看16道真题和解析