当前位置: 首页 > article >正文

L2-005 集合相似度 java

输入样例:

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<HashSet<Integer>> list = new ArrayList<>();
	for(int i=0;i<n;i++) {
		int m=sc.nextInt();
		list.add(new HashSet<>());
		for(int j=0;j<m;j++) {
			list.get(i).add(sc.nextInt());
		}
	}
	int k=sc.nextInt();
	for(int i=0;i<k;i++) {
		HashSet<Integer> temp = new HashSet<>();
		HashSet<Integer> 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());
	}
}
}

 


http://www.kler.cn/a/228212.html

相关文章:

  • skynet 源码阅读 -- 启动主流程
  • vim在命令模式下的查找功能
  • 如何使用 Redis 作为高效缓存
  • Word常见问题:嵌入图片无法显示完整
  • Android系统开发(十五):从 60Hz 到 120Hz,多刷新率进化简史
  • Lsky-Pro在线图片搭建教程(Docker部署方式)
  • myql 项目数据库和表的设计
  • 瑞_23种设计模式_工厂模式
  • 【webrtc】跟webrtc学list遍历
  • 洛谷:P2957 [USACO09OCT] Barn Echoes G
  • 通用函数
  • 【C/C++ 14】C++11智能指针
  • MySQL操作问题汇总
  • 06 - python操作xml
  • CI/CD总结
  • 【算法题】91. 解码方法
  • 详解 Spring Boot 条件装配
  • 考研中常见的算法-逆置
  • 在 iOS 上安装自定企业级应用
  • Matplotlib绘制炫酷柱状图的艺术与技巧【第60篇—python:Matplotlib绘制柱状图】
  • 2 月 3 日算法练习-数论
  • 网络安全笔记
  • 假期刷题打卡--Day23
  • 蓝桥杯Web应用开发-display属性
  • 开源计算机视觉库OpenCV详细介绍
  • Ainx框架实现 一