发布时间:2026/6/21 9:59:14
L2(第二阶段)真题参考代码 + 注释解释
本阶段真题参考代码解析在代码注释里面课程链接戳这 —您的支持是我最大的动力例题一L2-026 小字辈分数 25voiddfs(intu,intfa)// 搜树模板{d[u]d[fa]1;// 求树的深度for(autov:c[u]){if(v!fa){// 跳过父亲节点dfs(v,u);}}}voidsolve(){cinn;introot;for(inti1;in;i){intx;cinx;if(x-1)rooti;// 找根节点elsec[x].push_back(i);// 存树}d[root]1;// 根节点辈分为 1dfs(root,0);// 从根节点出发搜树vectorinte;// 存辈分最小的序列intmx0;for(inti1;in;i){if(mxd[i]){// 辈分还有更小e.clear();e.push_back(i);mxd[i];}elseif(mxd[i]){// 辈分最小直接存e.push_back(i);}}coutmx\n;for(inti0;ie.size();i){// 输出所有点coute[i];if(i!e.size()-1)cout ;}}例题二L2-031 深入虎穴分数 25voiddfs(intu,intfa)// 搜树模板{d[u]d[fa]1;// 求树的深度for(autov:c[u]){if(v!fa){// 跳过父亲节点dfs(v,u);}}}voidsolve(){cinn;for(inti1;in;i){intk;cink;for(intj1;jk;j){intx;cinx;c[i].push_back(x);// 存树p[x];// 统计入度}}introot;for(inti1;in;i)if(!p[i])rooti;// 找到根节点dfs(root,0);// 从根节点往下搜intx,mx0;for(inti1;in;i){// 找到最远的那个点if(mxd[i]){mxd[i];xi;}}coutx\n;}例题三L2-052 吉利矩阵分数 25voiddfs(intx,inty){if(xnyn){ans;// 统计答案return;}if(yn)x,y1;// 换行for(inti0;iL-row[x]iL-col[y];i){// 剪枝 1if(xnicol[y]!L)continue;// 剪枝 2if(ynirow[x]!L)continue;// 剪枝 3row[x]i;// 直接记录行和列的和优化判断col[y]i;dfs(x,y1);row[x]-i;// 回溯撤回标记col[y]-i;}}voidsolve(){cinLn;dfs(1,1);coutans\n;}例题四L2-048 寻宝图分数 25intdx[4]{0,0,1,-1};intdy[4]{1,-1,0,0};intT,n,m,k;voidsolve(){cinnm;vectorvectorcharg(n10,vectorchar(m10));// 二维n*m固定长度vectorvectorboolst(n10,vectorbool(m10));for(inti0;in;i)for(intj0;jm;j)st[i][j]0;for(inti0;in;i){for(intj0;jm;j){cing[i][j];}}intans0,cnt0;for(inti0;in;i){// 遍历整块大陆for(intj0;jm;j){if(!st[i][j]g[i][j]1){ans;// ans统计连通块岛屿个数queuePIIq;// bfs初始化q.push({i,j});st[i][j]true;boolflagfalse;if(g[i][j]1)flagtrue;while(q.size()){// 搜索连通块autotq.front();q.pop();for(intk0;k4;k){intxt.xdx[k];intyt.ydy[k];if(x0xny0ym!st[x][y]g[x][y]1){st[x][y]true;q.push({x,y});if(g[x][y]1)flagtrue;// 发现宝藏岛屿}}}cntflag;// cnt统计宝藏岛屿}}}coutans cnt\n;}例题五L3-037 夺宝大赛分数 30intdx[4]{0,0,1,-1};intdy[4]{1,-1,0,0};intg[N][N],d[N][N];boolst[N][N];intT,n,m,k;voidbfs(intx,inty)// 标准bfs求最短路{queuePIIq;// 初始化q.push({x,y});st[x][y]true;while(q.size()){intxq.front().x;// 取出当前点intyq.front().y;q.pop();for(inti0;i4;i){inttxxdx[i];inttyydy[i];if(!g[tx][ty])continue;// 跳过障碍if(tx1txnty1tym!st[tx][ty]g[tx][ty]1){d[tx][ty]d[x][y]1;// 距离1q.push({tx,ty});st[tx][ty]true;}}}}voidsolve(){cinnm;PII root;for(inti1;in;i){for(intj1;jm;j){cing[i][j];if(g[i][j]2)root{i,j};// 找到大本营}}bfs(root.x,root.y);// 从大本营出发进行bfs搜索最短路mapint,vectorintmp;cink;for(inti1;ik;i){intx,y;cinxy;swap(x,y);// 这里的横纵坐标反过来的需要交换一下if(d[x][y])mp[d[x][y]].push_back(i);// 记录第几支队伍}for(autot:mp){if(t.y.size()1){// 只有一支队伍就输出coutt.y[0] t.x\n;return;}}coutNo winner.;}例题六L2-050 懂蛇语分数 25mapstring,vectorstringmp;inta[N],b[N];intT,n,m,k;stringget(string s)// 获取每个单词首字母的集串{string str;for(inti0;is.size();i){if(s[i]as[i]z){strs[i];while(s[i]! is.size())i;}}returnstr;}voidsolve(){cinn;cin.ignore();for(inti1;in;i){string str;getline(cin,str);// 一整行读入mp[get(str)].push_back(str);// 根据首字母集串映射识别其他串}cinm;cin.ignore();for(inti1;im;i){string str;getline(cin,str);// 一整行读入string sget(str);// 获取关键串首字母映射if(!mp[s].size())coutstr\n;// 如果没找到就输出原串else{vectorstringcmp[s];sort(c.begin(),c.end());// 排序for(intj0;jc.size();j){coutc[j];if(j!c.size()-1)cout|;// 字符串之间用 | 隔开}cout\n;}}}

相关新闻

Kafka-UI:企业级Apache Kafka可视化监控与运维管理平台
2026/6/21 8:59:14

Kafka-UI:企业级Apache Kafka可视化监控与运维管理平台

Kafka-UI:企业级Apache Kafka可视化监控与运维管理平台 【免费下载链接】kafka-ui Open-Source Web UI for Apache Kafka Management 项目地址: https://gitcode.com/GitHub_Trending/ka/kafka-ui 在分布式流处理架构日益复杂的今天,Apache Kafka…

阅读更多
Sunshine游戏串流终极指南:5分钟搭建家庭游戏共享平台
2026/6/21 8:59:14

Sunshine游戏串流终极指南:5分钟搭建家庭游戏共享平台

Sunshine游戏串流终极指南:5分钟搭建家庭游戏共享平台 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 你是否曾经想在客厅电视上玩电脑游戏,却不想搬动沉重…

阅读更多
【共创季稿事节】鸿蒙原生 ArkTS 布局方式入门:Stack 堆叠布局 — 层叠式排列的核心概念
2026/6/21 8:59:14

【共创季稿事节】鸿蒙原生 ArkTS 布局方式入门:Stack 堆叠布局 — 层叠式排列的核心概念

鸿蒙原生 ArkTS 布局方式入门:Stack 堆叠布局 — 层叠式排列的核心概念一、引言 在鸿蒙原生应用开发中,布局是 UI 最核心的能力。ArkUI 的 Column、Row、Flex、RelativeContainer 各有所长,而本文的主角 Stack(堆叠布局&#xff0…

阅读更多
Linux异步I/O新宠io_uring登场,对比epoll优势显著!
2026/6/21 10:59:14

Linux异步I/O新宠io_uring登场,对比epoll优势显著!

Linux中的epoll与io_uring2026年6月20日,编程领域聚焦于Linux上处理异步I/O的不同方案。去年,开发者和学生们构建了名为TinyGate的反向代理服务器,这是一个基于工作线程的简单教学项目,虽基本运行良好,但存在架构限制&…

阅读更多
Mermaid Live Editor:3步掌握免费在线图表编辑的终极技巧
2026/6/21 10:59:14

Mermaid Live Editor:3步掌握免费在线图表编辑的终极技巧

Mermaid Live Editor:3步掌握免费在线图表编辑的终极技巧 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-edi…

阅读更多
XXMI Launcher:一站式游戏模组管理器终极指南
2026/6/21 10:59:14

XXMI Launcher:一站式游戏模组管理器终极指南

XXMI Launcher:一站式游戏模组管理器终极指南 【免费下载链接】XXMI-Launcher Modding platform for GI, HSR, WW and ZZZ 项目地址: https://gitcode.com/gh_mirrors/xx/XXMI-Launcher 还在为管理不同游戏的模组而手忙脚乱吗?每次切换游戏都要重…

阅读更多
QLoRA微调大模型实战:用100条工艺数据训一个“半导体专家“一、问题背景:通用大模型不懂FAB,微调也太贵
2026/6/21 10:59:14

QLoRA微调大模型实战:用100条工艺数据训一个“半导体专家“一、问题背景:通用大模型不懂FAB,微调也太贵

今年年初,我在FAB内部署了ChatGPT做工艺参数推荐。效果只能说一般。问它:"ETCH工艺温度超出规格了,怎么调回去?"ChatGPT给的答案比较通用——"检查功率设置"、"看看气体流量"——都是正确的废话。问…

阅读更多
开源大模型本地部署:Hugging Face下载、量化与推理框架实战指南
2026/6/21 10:59:14

开源大模型本地部署:Hugging Face下载、量化与推理框架实战指南

1. 开源AI大模型本地部署:不是“下载安装”四个字能概括的系统工程很多人搜“开源AI大模型怎么下载安装到电脑上”,点开就期待看到一行命令、一个exe、三步搞定——结果发现连Hugging Face账号注册都要翻墙,模型权重动辄20GB起,显…

阅读更多
魔兽争霸III终极兼容方案:WarcraftHelper完整配置与性能优化指南
2026/6/21 9:59:14

魔兽争霸III终极兼容方案:WarcraftHelper完整配置与性能优化指南

魔兽争霸III终极兼容方案:WarcraftHelper完整配置与性能优化指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 你是否还在为魔兽争霸III…

阅读更多
嵌入式语音编解码实战:G.726 ADPCM库集成与优化指南
2026/6/21 0:59:13

嵌入式语音编解码实战:G.726 ADPCM库集成与优化指南

1. 项目概述与G.726 ADPCM技术背景在嵌入式语音处理领域,带宽和存储资源往往是寸土寸金的。如果你做过对讲机、VoIP网关或者早期的数字录音设备,一定对如何在有限的比特率下保住语音可懂度这件事深有感触。我当年接手一个车载调度系统的项目,…

阅读更多
ITU656格式化器寄存器配置实战:VBI数据处理与VCR特技播放兼容性
2026/6/21 0:59:13

ITU656格式化器寄存器配置实战:VBI数据处理与VCR特技播放兼容性

1. 项目概述与核心挑战在数字视频处理领域,将原始的视频数据、同步时序以及各种辅助信息打包成一个标准、稳定的串行数据流,是确保设备间互联互通的基础。ITU-R BT.656标准(常简称为ITU656)正是为此而生的一套“交通规则”。它定义…

阅读更多
嵌入式GUI开发实战:emWin环境搭建、配置优化与性能调优指南
2026/6/21 0:59:13

嵌入式GUI开发实战:emWin环境搭建、配置优化与性能调优指南

1. 项目概述与emWin核心价值解析在嵌入式系统开发领域,人机交互(HMI)的设计正从简单的LED指示灯和按键,快速向全彩图形化界面演进。无论是智能家电上的触摸屏、工业PLC的操作面板,还是医疗设备的参数显示,一…

阅读更多
嵌入式语音编解码实战:G.726 ADPCM库集成与优化指南
2026/6/21 0:59:13

嵌入式语音编解码实战:G.726 ADPCM库集成与优化指南

1. 项目概述与G.726 ADPCM技术背景在嵌入式语音处理领域,带宽和存储资源往往是寸土寸金的。如果你做过对讲机、VoIP网关或者早期的数字录音设备,一定对如何在有限的比特率下保住语音可懂度这件事深有感触。我当年接手一个车载调度系统的项目,…

阅读更多
ITU656格式化器寄存器配置实战:VBI数据处理与VCR特技播放兼容性
2026/6/21 0:59:13

ITU656格式化器寄存器配置实战:VBI数据处理与VCR特技播放兼容性

1. 项目概述与核心挑战在数字视频处理领域,将原始的视频数据、同步时序以及各种辅助信息打包成一个标准、稳定的串行数据流,是确保设备间互联互通的基础。ITU-R BT.656标准(常简称为ITU656)正是为此而生的一套“交通规则”。它定义…

阅读更多
嵌入式GUI开发实战:emWin环境搭建、配置优化与性能调优指南
2026/6/21 0:59:13

嵌入式GUI开发实战:emWin环境搭建、配置优化与性能调优指南

1. 项目概述与emWin核心价值解析在嵌入式系统开发领域,人机交互(HMI)的设计正从简单的LED指示灯和按键,快速向全彩图形化界面演进。无论是智能家电上的触摸屏、工业PLC的操作面板,还是医疗设备的参数显示,一…

阅读更多
GIT修改用户名
2026/6/20 3:11:17

GIT修改用户名

在GIT中修改用户名可按以下步骤操作: 查看当前git的用户名,使用命令git config --list或git config user.name。修改git用户名,使用命令git config --global user.name "xxx(新的用户名)",将其中…

阅读更多
Win11Debloat:让你的Windows系统重获新生的终极优化工具
2026/6/19 20:40:12

Win11Debloat:让你的Windows系统重获新生的终极优化工具

Win11Debloat:让你的Windows系统重获新生的终极优化工具 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and …

阅读更多
技术深度解析:m4s-converter实现原理与B站缓存视频转换最佳实践
2026/6/20 7:34:01

技术深度解析:m4s-converter实现原理与B站缓存视频转换最佳实践

技术深度解析:m4s-converter实现原理与B站缓存视频转换最佳实践 【免费下载链接】m4s-converter 一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter m4s-converter是一个…

阅读更多