news 2026/4/22 19:28:57

GESP认证C++编程真题解析 | P10378 [GESP202403 七级] 交流问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GESP认证C++编程真题解析 | P10378 [GESP202403 七级] 交流问题

​欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!

专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。

适合人群:

  • 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
  • 希望系统学习C++/Python编程的初学者
  • 想要提升算法与编程能力的编程爱好者

附上汇总帖:GESP认证C++编程真题解析 | 汇总


【题目来源】

洛谷:[P10378 GESP202403 七级] 交流问题 - 洛谷

【题目描述】

来自两所学校A AAB BBn nn名同学聚在一起相互交流。为了方便起见,我们把这些同学从1 11n nn编号。他们共进行了m mm次交流,第i ii次交流中,编号为u i , v i u_i, v_iui,vi的同学相互探讨了他们感兴趣的话题,并结交成为了新的朋友。

由于这次交流会的目的是促进两校友谊,因此只有不同学校的同学之间会交流。同校同学并不会互相交流。

作为A AA校顾问,你对B BB校的规模非常感兴趣,你希望求出B BB校至少有几名同学、至多有几名同学。

【输入】

第一行两个正整数,表示同学的人数n nn、交流的次数m mm
接下来m mm行,每行两个整数u i , v i u_i, v_iui,vi,表示一次交流。

【输出】

输出一行两个整数,用单个空格隔开,分别表示B BB校至少有几名同学、至多有几名同学。

【输入样例】

4 3 1 2 2 3 4 2

【输出样例】

1 3

【算法标签】

《洛谷 P10378 交流问题》 #搜索# #图论# #并查集# #图论建模# #二分图# #GESP# #2024#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;constintN=1e5+5;// 最大节点数intn,m,s,t;// n: 节点数, m: 边数, s,t: 边的两个端点intans1,ans2;// ans1: 最小染色数, ans2: 最大染色数intnum[3];// num[1]: 颜色1的节点数, num[2]: 颜色2的节点数intcol[N];// 每个节点的颜色,0表示未染色vector<int>e[N];// 邻接表存储图// 深度优先搜索进行二分图染色voiddfs(intu){// 遍历节点u的所有邻居节点vfor(autov:e[u]){// 如果邻居节点v还未染色if(col[v]==0){// 将v染成与u不同的颜色// 如果col[u]=1,则col[v]=2;如果col[u]=2,则col[v]=1col[v]=3-col[u];num[col[v]]++;// 对应颜色的节点数加1dfs(v);// 递归染色v的邻居}}}intmain(){// 输入节点数和边数cin>>n>>m;// 输入边,构建无向图for(inti=1;i<=m;i++){cin>>s>>t;e[s].push_back(t);e[t].push_back(s);}// 遍历所有节点for(inti=1;i<=n;i++){// 如果节点i还未染色,说明找到一个新的连通分量if(col[i]==0){// 初始化当前连通分量的颜色计数num[1]=1;// 从颜色1开始,所以num[1]=1num[2]=0;// 颜色2初始为0// 将节点i染成颜色1col[i]=1;// 从节点i开始进行DFS染色dfs(i);// 统计当前连通分量的结果// ans1: 最小化颜色1和颜色2的较小值// ans2: 最大化颜色1和颜色2的较大值ans1+=min(num[1],num[2]);ans2+=max(num[1],num[2]);}}// 输出结果cout<<ans1<<" "<<ans2<<endl;return0;}

【运行结果】

4 3 1 2 2 3 4 2 1 3
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 13:12:05

防爆气象仪——防爆一体化气象仪

工区环境复杂&#xff0c;可燃气体多、腐蚀性强&#xff0c;气象站的防爆、防腐等性能直接关乎生产安全。一款集齐“防爆防腐防水防震防尘”五防优势的化工专用防爆气象站&#xff0c;凭借老师傅的亲测认证&#xff0c;成为化工区的安全优选。有化工老师傅直言&#xff1a;“化…

作者头像 李华
网站建设 2026/4/23 13:16:15

OpenAPI-GUI 可视化编辑器:快速创建 OpenAPI 3.0 规范的终极指南

OpenAPI-GUI 可视化编辑器&#xff1a;快速创建 OpenAPI 3.0 规范的终极指南 【免费下载链接】openapi-gui GUI / visual editor for creating and editing OpenAPI / Swagger definitions 项目地址: https://gitcode.com/gh_mirrors/op/openapi-gui OpenAPI-GUI 是一款…

作者头像 李华
网站建设 2026/4/23 13:02:00

基于SpringBoot+Vue的教学管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】

摘要 随着信息技术的快速发展&#xff0c;教育管理系统的数字化和智能化需求日益增长。传统的教学管理方式依赖人工操作&#xff0c;效率低下且易出错&#xff0c;难以满足现代教育的高效管理需求。在线教育、混合式教学等新型教学模式对管理系统的实时性、交互性和数据安全性提…

作者头像 李华
网站建设 2026/4/23 11:35:24

FF14钓鱼计时器终极指南:渔人的直感让钓鱼变得如此简单

FF14钓鱼计时器终极指南&#xff1a;渔人的直感让钓鱼变得如此简单 【免费下载链接】Fishers-Intuition 渔人的直感&#xff0c;最终幻想14钓鱼计时器 项目地址: https://gitcode.com/gh_mirrors/fi/Fishers-Intuition 还在为FF14钓鱼时错过最佳时机而烦恼吗&#xff1f…

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

【2025最新】基于SpringBoot+Vue的Spring高校实习信息发布网站管理系统源码+MyBatis+MySQL

摘要 随着高等教育普及和就业市场竞争加剧&#xff0c;高校实习信息管理面临信息分散、更新滞后、匹配效率低等挑战。传统纸质或单一平台管理模式难以满足学生个性化求职需求&#xff0c;也增加了企业招聘成本。高校实习信息发布网站管理系统通过数字化整合校企资源&#xff0…

作者头像 李华