L3-003. 社交集群

L3-003 社交集群(并查集+sort排序) 题目链接:L3-003 社交集群 考查知识:并查集+sort排序 题意描述:n个人有k个爱好,问不同的社交集群的个数与每个集群中的人数。 思路简析:对爱好做并查集,区分了爱好类;再遍历所有人,记录每个人所属的爱好类的根结点,并标记该爱好类的人数+1 具体代码#include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e3+10; int fa[N],a[N],b[N];//a[i]为第i个人的. 阅读详情

题目难就难在题意理解上,看懂了明显就是一个很裸的并查集。题目的意思是,假如1,3都喜欢某个东西,同时3,5都喜欢某个东西,那么1,3,5就是一个兴趣团体。

#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#include<vector>
using namespace std;
int par[1005];
int find(int x)
{
    return x==par[x]?x:par[x]=find(par[x]);
}
void unite(int x,int y)
{
    x=find(x),y=find(y);
    if(x==y)return;
    par[x]=y;return;
}
int main()
{
    int n,i,j,k;
    vector<int>ah[1005];
    cin>>n;for(i=1;i<=n;i++)par[i]=i;
    for(i=1;i<=n;i++){
        scanf("%d:",&k);int t;
        for(j=1;j<=k;j++){
            scanf("%d",&t);ah[t].push_back(i);
        }
    }
    for(i=1;i<=1000;i++){
        if(ah[i].empty())continue;
        for(j=1;j<ah[i].size();j++)
            unite(ah[i][0],ah[i][j]);
    }
    int cnt[1005];memset(cnt,0,sizeof(cnt));
    for(i=1;i<=n;i++){
        int t=find(i);//这里记得要find一下,否则答案错误
        cnt[t]++;
    }
    vector<int>ans;
    for(i=1;i<=n;i++){
        if(cnt[i])
            ans.push_back(cnt[i]);
    }
    sort(ans.begin(),ans.end());
    reverse(ans.begin(),ans.end());
    cout<<ans.size()<<endl;
    for(i=0;i<ans.size()-1;i++)
        cout<<ans[i]<<' ';
    cout<<ans.back()<<endl;

    return 0;
}
CCCC-GPLT(天梯赛).zip_C++_gplt天梯赛_rockvqs 上传文件使用C++语言,完成天梯比赛编程试题,并附带源码和题目,需要资源的人可以下载 立即下载

相关推荐

CTFshow MISC入门实战:010Editor+TweakPNG解决PNG隐写难题(附完整脚本)

本文详细介绍了在CTFshow MISC比赛中,如何利用010Editor和TweakPNG两款专业工具构建高效的PNG隐写分析工作流。文章从PNG文件结构解析入手,通过实战案例演示了如何协同使用010Editor进行二进制侦察与结构分析,以及使用TweakPNG进行数据块的精准编辑与删除,并最终提供了自动化分析脚本,帮助选手系统性地解决PNG隐写难题。

weixin_29252171的博客 74

【团体程序设计天梯赛】L3-003社交集群

并查集

whaoe_m的博客 515

AArch64 ARM64 寄存器介绍

除了上述通用寄存器,还有FPSR(浮点状态寄存器)和 FPCR(浮点控制寄存器)等。X29寄存器和X30寄存器在函数调用和堆栈帧的管理中扮演着关键角色。AArch64架构提供了31个通用寄存器,每个寄存器都可以用作64位X寄存器(X0~X30)或32位W寄存器(W0~W30)。使用X寄存器将导致64位的计算,使用W寄存器将导致32位的计算。EL0、EL1、EL2和EL3是AArch64架构中定义的四个特权级别(Exception Levels),用于支持不同的执行环境和特权级别。

lml435035844的博客 1万+

【GPLT 三阶题目集】L3-003 社交集群

当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。

花辞树dor的博客 542

FLACS-CFD 气云爆炸模拟全流程工况构建指南:从泄漏到爆炸

摘要: 本文详细介绍了使用FLACS-CFD模拟气云爆炸的全流程构建方法,重点解决泄漏模拟到爆炸模拟的气云文件传递问题。核心步骤包括: 项目规划:明确泄漏源(甲烷管道腐蚀泄漏)和爆炸场景,建立标准目录结构; 网格设计:泄漏与爆炸模拟需采用兼容的网格,爆炸域应为泄漏域的子区域且网格划分一致; 泄漏模拟配置:通过.inp文件定义几何、网格、风场、燃料及泄漏源参数,确保输出爆炸所需的气云文件(*.uni/*.fla); 关键设置:统一燃料名称、时间点匹配、路径正确性,避免版本兼容性问题。

huanghm88的专栏 757

ubuntu 20.04 搭建多用户远程桌面共享及同时在线使用

摘要:本文介绍了在物理机上配置远程桌面访问的完整流程。通过setup_xrdp.sh脚本自动安装xrdp服务,修改配置文件并开放3389端口。同时提供了用户管理脚本:add_rdp_users.sh用于创建带sudo权限的远程用户,del_rdp_users.sh用于删除用户及主目录。还包含批量操作脚本add_rdp_all.sh和del_rdp_all.sh,支持一次性创建/删除多个用户(如dev1-dev5),所有用户密码统一设置为111111。完整方案实现了远程桌面环境的快速部署和用户集中管理。

622

L3-003. 社交集群-PAT团体程序设计天梯赛GPLT(并查集)

L3-003. 社交集群 在社交网络平台注册时,用户通常会输入自己的兴趣爱好,以便找到和自己兴趣相投的朋友。有部分兴趣相同的人们就形成了“社交集群”。现请你编写程序,找出所有的集群。 输入格式: 输入的第一行给出正整数N( Ki: hi[1] hi[2] ... hi[Ki] 其中Ki(>0)是第i个人的兴趣的数量,hi[j]是第i个人的第j项兴趣的编号,编号范围为[1, 1000]内的

柳婼 の blog 1113

越野换了逐飞的ips200pro的屏幕后代码烧录中报错: “Cannot initialize device connection” 和 “Flashing failed” ...如何解决?

🏆 本文收录于《全栈Bug调优(实战版)》专栏,致力于分享我在项目实战过程中遇到的各类Bug及其原因,并提供切实有效的解决方案。无论你是初学者还是经验丰富的开发者,本文将为你指引出一条更高效的Bug修复之路,助你早日登顶,迈向财富自由的梦想🚀!同时,欢迎大家关注、收藏、订阅本专栏,更多精彩内容正在持续更新中。让我们一起进步,Up!Up!Up!    备注: 部分问题/难题源自互联网,经过精心筛选和整理,结合数位十多年大厂实战经验资深大佬经验总结所得,数条可行方案供所需之人参考。

**My Coding Family** 1150

L3-003 社交集群(并查集)

题目链接 思路: 并查集 + unordered_set 先初始并查集f数组,再输入将每人的爱好id加入到各自的set集合中, 从前往后遍历每个人为 i,再遍历 i 后面的人 j,若有与 i 相同的兴趣爱好的 j 则合并sz(维护并查集大小)和set(并查集所含爱好id)然后break。 这里有个小优化:当某个元素 j 已经被前面的某个 i 合并过后,就可以不用再当 i 了,因为已经跟着前面的 i 去过后面一次了。 当然这里是维护并查集大小,所以不能重复加入并查集,要判断f1 != f2,这里wa了一发。

Belief_7 322

10分钟搞定小红书爆款笔记爬取!Selenium模拟登录+数据解析全流程,新手也能落地

小红书爬虫实战的核心,是**“模拟真人操作+解析结构化数据”**——Selenium解决了动态页面和登录的问题,lxml解决了数据提取的问题,pandas解决了数据存储的问题。新手学爬虫不用一开始就啃复杂的反爬机制,先从这类“可见即可爬”的场景入手,掌握“模拟操作→数据解析→数据保存”的全流程,再逐步叠加异常处理、批量爬取、反爬应对等功能。需要注意的是:爬取数据仅用于个人学习和研究,不得用于商业用途,且需遵守小红书的用户协议,不要过度爬取导致服务器压力。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1728

【目标检测】全局上下文感知的详解

目标检测中的全局上下文感知(Global Context Awareness)​是指模型在定位和识别目标时,能够有效利用图像中全局或大范围的上下文信息(如场景语义、目标间关系、空间布局等),而不仅仅依赖局部特征。这种能力显著提升了检测的鲁棒性,尤其是在复杂场景(如遮挡、小目标、密集目标)中表现突出。

浩瀚之水的专栏 644

PTA 社交集群

当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。 输入格式: 输入在第一行给出一个正整数 N(≤1000),为社交网络平台注册的所有用户的人数。于是这些人从 1 到 N 编号。随后 N 行,每行按以下格式给出一个人的兴趣爱好列表: K​i​​ : h​i​​ [1] h​i​​ [2] … h​i​​ [K​i​​ ]其中K​i (>0)是兴趣爱好的个数,h​i​​ [j]是第

Piink的博客 985

9、自动定理证明的发展历程与关键技术

本文全面介绍了自动定理证明的发展历程、关键技术及其实际应用,包括消解原理、参数化、支撑集策略等核心方法,并探讨了算法优化、数据结构优化及并行计算等提升效率的手段。同时,文章展望了未来发展方向,如深度学习在定理证明中的应用、交互式定理证明以及高阶逻辑的研究前景。

ll5678的博客 505

L3-003 社交集群

L3-003 社交集群分数 30全屏浏览切换布局作者 陈越单位 浙江大学当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。输入格式:输入在第一行给出一个正整数 N(≤1000),为社交网络平台注册的所有用户的人数。于是这些人从 1 到 N 编号。

m0_75262437的博客 546

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

PAT - 天梯赛 L3-003 社交集群 (并查集)

L3-003. 社交集群时间限制1000 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越在社交网络平台注册时,用户通常会输入自己的兴趣爱好,以便找到和自己兴趣相投的朋友。有部分兴趣相同的人们就形成了“社交集群”。现请你编写程序,找出所有的集群。输入格式:输入的第一行给出正整数N(&lt;=1000),即社交网络中的用户总数(则用户从1到N编号)。随后N行,每行...

yf224的博客 598

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

团体程序设计天梯赛 L3-003 社交集群 (Java)

当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。

weixin_43897853的博客 163

pat L3-003. 社交集群

L3-003. 社交集群 时间限制 1000 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 在社交网络平台注册时,用户通常会输入自己的兴趣爱好,以便找到和自己兴趣相投的朋友。有部分兴趣相同的人们就形成了“社交集群”。现请你编写程序,找出所有的集群。

MR CODER 1452

L3-003 社交集群 (30分)

没看见有图这种做法,发出来一下。

2301_79930530的博客 245

L3-003 社交集群 并查集

L3-003社交集群(30 分) 当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。 输入格式: 输入在第一行给出一个正整数 N(≤1000),为社交网络平台注册的所有用户的人数。于是这些人从 1 到 N 编号。随后 N 行,每行按以下格式给出一个人的兴趣爱好列表:...

请赐教 244
上一篇: Educational Codeforces Round 40 G. Castle Defense
下一篇: 洛谷P1160
HumveeA6
博客等级 码龄17年 12粉丝 175原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值