news 2026/4/15 13:32:19

PTA 7-9 集合相似度分数(C++) 25‘

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PTA 7-9 集合相似度分数(C++) 25‘

给定两个整数集合,它们的相似度定义为:Nc​/Nt​×100%。其中 Nc​ 是两个集合都有的不相等整数的个数,Nt​ 是两个集合一共有的不相等整数的个数。你的任务就是计算任意一对给定集合的相似度。

输入格式:

输入第一行给出一个正整数 n(≤50),是集合的个数。随后 n 行,每行对应一个集合。每个集合首先给出一个正整数 m(≤104),是集合中元素的个数;然后跟 m 个 [0,109] 区间内的整数。

之后一行给出一个正整数 k(≤2000),随后 k 行,每行对应一对需要计算相似度的集合的编号(集合从 1 到 n 编号)。数字间以空格分隔。

输出格式:

对每一对需要计算的集合,在一行中输出它们的相似度,为保留小数点后 2 位的百分比数字。

输入样例:

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%

题目理解:

当我们发现题目不好理解的时候,就把数学往里面带,会发现,其实Nc就是交集,Nt就是并集。

小记:

定义集合:set<int> a={};

集合插入元素:a[i].insert(x);

找集合的交集:(也可以这样写,比较简单)

for(auto it : a[c-1]) { if(a[d-1].find(it)!=a[d-1].end() count++; }

代码:

#include<bits/stdc++.h> using namespace std; int main() { int n; cin>>n; set<int> a[n]; for(int i=0;i<n;i++) { int l; cin>>l; for(int j=0;j<l;j++) { int x; cin>>x; a[i].insert(x); } } int b; cin>>b; int count; for(int i=0;i<b;i++) { count=0; int c,d; cin>>c>>d; int sum1=a[c-1].size(); int sum2=a[d-1].size(); set<int>::iterator it; for(it=a[c-1].begin();it!=a[c-1].end();it++) { if(a[d-1].find(*it)!=a[d-1].end()) count++; } double sum=count*1.0/(sum1+sum2-count)*100; printf("%.2f%%",sum); cout<<endl; } return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/12 2:15:59

4800+免费SVG图标库实战指南:Tabler Icons深度应用解析

4800免费SVG图标库实战指南&#xff1a;Tabler Icons深度应用解析 【免费下载链接】tabler-icons A set of over 4800 free MIT-licensed high-quality SVG icons for you to use in your web projects. 项目地址: https://gitcode.com/gh_mirrors/ta/tabler-icons 还在…

作者头像 李华
网站建设 2026/4/11 5:33:44

计算机毕设java的电脑商城管理系统 基于SpringBoot框架的计算机在线销售平台设计与实现 JavaWeb驱动的电脑数码商城运营系统开发

计算机毕设java的电脑商城管理系统wy9os9 &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。近年来互联网技术的飞速发展催生了大量电商应用&#xff0c;电脑数码产品作为高频消费品…

作者头像 李华
网站建设 2026/4/14 2:21:31

APIKit 终极指南:从零开始构建类型安全的网络请求

APIKit 终极指南&#xff1a;从零开始构建类型安全的网络请求 【免费下载链接】APIKit Type-safe networking abstraction layer that associates request type with response type. 项目地址: https://gitcode.com/gh_mirrors/ap/APIKit APIKit 是一个强大的类型安全网…

作者头像 李华
网站建设 2026/4/14 3:55:32

学长亲荐9个AI论文软件,助你搞定本科生毕业论文!

学长亲荐9个AI论文软件&#xff0c;助你搞定本科生毕业论文&#xff01; AI 工具如何帮你轻松应对论文写作难题 在如今的学术环境中&#xff0c;AI 工具已经成为许多本科生撰写毕业论文时的重要助手。从内容生成到格式调整&#xff0c;再到降重处理&#xff0c;这些工具不仅提升…

作者头像 李华
网站建设 2026/4/15 10:31:27

突破性视觉语言模型:重新定义人机交互体验

突破性视觉语言模型&#xff1a;重新定义人机交互体验 【免费下载链接】Qwen3-VL-8B-Thinking 项目地址: https://ai.gitcode.com/hf_mirrors/unsloth/Qwen3-VL-8B-Thinking 在人工智能技术飞速发展的今天&#xff0c;视觉语言模型正成为连接数字世界与现实世界的桥梁。…

作者头像 李华
网站建设 2026/4/15 10:32:15

终极指南:如何用CRIU快速实现Linux应用状态冻结与恢复

终极指南&#xff1a;如何用CRIU快速实现Linux应用状态冻结与恢复 【免费下载链接】criu Checkpoint/Restore tool 项目地址: https://gitcode.com/gh_mirrors/cr/criu 在当今云计算和容器化技术蓬勃发展的时代&#xff0c;Linux应用冻结技术成为了系统管理员和开发者的…

作者头像 李华