L2-005 集合相似度 java

L2-005 集合相似度 java_第1张图片

输入样例:

3
3 99 87 101
4 87 101 5 87
7 99 101 18 5 135 18 99
2
1 2
1 3

输出样例:

50.00%
33.33%

 



import java.util.ArrayList;
import java.util.HashSet;
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);
	int n=sc.nextInt();
	ArrayList> list = new ArrayList<>();
	for(int i=0;i());
		for(int j=0;j temp = new HashSet<>();
		HashSet all = new HashSet<>();
		int common=0;
		int x=sc.nextInt();
		int y=sc.nextInt();
		for(Object o:list.get(x-1)) {
			all.add((Integer)o);
			temp.add((Integer)o);
		}
		for(Object o :list.get(y-1)) {
			all.add((Integer)o);
			if(temp.add((Integer) o)==false) {
				common++;
			}
		}
		System.out.printf("%.2f%%\n",100.0*common/all.size());
	}
}
}

 

你可能感兴趣的:(pta,java,开发语言,算法)