PTA团体程序设计天梯赛L1真题讲解L1-101-104
官网https://pintia.cn/problem-sets/994805046380707840/exam/problems/type/7文章目录L1-101 别再来这么多猫娘了L1-102 兰州牛肉面L1-103 整数的持续性L1-104 九宫格L1-101 别再来这么多猫娘了题目大意给定若干违禁词、警告阈值和一段待检查文本统计文本中违禁词的出现次数。若次数小于阈值将所有违禁词替换为censored后输出文本若次数大于等于阈值则输出违禁词总数和警告语句。匹配规则为从左到右处理匹配到违禁词后从其末尾继续向后查找不重叠计数。核心思路按输入顺序逐个处理违禁词在文本中滑动匹配子串匹配成功则计数并用特殊字符占位避免后续匹配重叠。最终根据计数结果选择输出替换后的文本或警告信息。算法步骤读取违禁词数量将所有违禁词存入数组。读取阈值使用getline读取完整待检查文本。遍历每个违禁词在文本中逐位滑动匹配若当前位置子串与违禁词相等计数加1并用特殊字符替换该段内容占位。匹配后指针跳到违禁词末尾继续防止重叠匹配。若总计数小于阈值遍历文本普通字符原样输出特殊字符替换为censored输出。若总计数大于等于阈值输出计数与警告语句。正解代码#includebits/stdc.husingnamespacestd;string s,sscensored;vectorstringv;intn,k,cnt;intmain(){cinn;for(inti1;in;i){string s1;cins1;v.push_back(s1);}cink;cin.ignore();getline(cin,s);for(autot:v){intlnt.size();for(inti0;ilns.size();i){if(s.substr(i,ln)t){cnt;s.replace(i,ln,\b);}}}if(cntk){for(inti0;is.size();i)if(s[i]!\b)couts[i];elsecoutss;}else{coutcnt\n;coutHe Xie Ni Quan Jia!;}return0;}代码关键细节读取阈值后必须用cin.ignore()吃掉换行符避免后续getline读入空行。使用特殊字符如退格符临时占位匹配到的违禁词避免直接替换字符串导致长度变化、影响后续匹配位置。违禁词按输入顺序依次处理符合题目要求。L1-102 兰州牛肉面题目大意给定 n 种牛肉面的单价以及若干条销售记录品种编号 碗数遇到编号 0 时输入结束。统计每种牛肉面的总销量和全天总营业额按品种编号顺序输出销量最后输出保留两位小数的总营业额。核心思路用数组按编号存储每种面的单价和销量遍历销售记录累加销量与营业额最后按顺序输出结果。算法步骤读取品种数 n再依次读入 n 种面的单价按下标对应编号存储。初始化销量数组全部为 0。循环读取销售记录当读到0 0时终止循环。每条有效记录累加对应品种的销量同时计算本次金额并加入总营业额。按编号 1 到 n 的顺序逐行输出销量最后输出总营业额保留两位小数。正解代码#includebits/stdc.husingnamespacestd;doublew[110];intmain(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);intn;cinn;doubleans0;for(inti1;in;i)cinw[i];mapint,intmp;intx,q;for(inti1;in;i)mp[i]0;while(cinxq){if(x0q0)break;mp[x]q;ansq*w[x];}for(autov:mp){coutv.secondendl;}printf(%.2f,ans);return0;}代码关键细节单价与总营业额使用double类型存储保证小数精度。品种编号从 1 开始数组下标与编号一一对应避免越界。输出营业额使用printf(%.2f)格式化自动补零到两位小数。L1-103 整数的持续性题目大意定义整数的持续性反复将该数各位数字相乘直到得到一个个位数所需要的操作步数即为持续性。给定区间 [a, b]找出区间内持续性最长的整数输出最长步数以及所有符合条件的整数按升序排列。核心思路遍历区间内所有整数逐个模拟计算持续性记录最大值和对应的所有数字最后按要求输出。算法步骤编写函数计算单个整数的持续性循环求各位数字的乘积直到数字小于 10统计循环步数。遍历区间 [a, b] 内的每个整数计算其持续性同时更新全局最大持续性。收集所有持续性等于最大值的整数因遍历本身升序结果天然有序。第一行输出最长持续性第二行输出所有符合条件的整数。正解代码#includebits/stdc.husingnamespacestd;constintN2e59;intn,t,ans;vectorpairint,intv;intsxx(intx){intcnt0;while(x9){inttmpx,num1;cnt;while(tmp){num*tmp%10;tmp/10;}xnum;//coutx\n;}returncnt;}intmain(){inta,b,mx0;cinab;for(intia;ib;i){intysxx(i);v.push_back({i,y});mxmax(mx,y);}//coutmx\n;vectorintans;for(autot:v)if(t.secondmx)ans.push_back(t.first);coutmx\n;for(inti0;ians.size();i){coutans[i];if(i!ans.size()-1)cout ;}return0;}代码关键细节计算各位乘积时若某一位为 0乘积直接变为 0下一步即可终止无需继续计算剩余位。区间遍历顺序为从小到大收集的结果自动满足升序要求无需额外排序。L1-104 九宫格题目大意给定多个 9×9 的九宫格判断其是否满足数独规则每行、每列、每个 3×3 小宫格内1~9 每个数字恰好出现一次且数字均在 1~9 范围内。合法输出 1不合法输出 0。核心思路分别编写行检查、列检查、3×3 宫格检查三个函数用布尔数组标记数字出现情况只要任意一处出现重复或非法数字即判定为不合法。算法步骤读取测试用例数 t逐个处理每个九宫格。行检查遍历每一行标记出现过的数字出现重复或超出 1~9 范围则返回不合法。列检查遍历每一列同理检查数字合法性与唯一性。3×3 宫格检查以 (1,1)、(1,4)、(1,7)、(4,1) … 为左上角起点逐个检查 9 个小宫格。三项检查全部通过则输出 1否则输出 0。正解代码#includebits/stdc.husingnamespacestd;inta[10][10],t;boolckr(inth){boolst[10]{0};for(inti1;i9;i){intxa[h][i];if(st[x]||x1||x9)return0;st[x]1;}return1;}boolckc(intl){boolst[10]{0};for(inti1;i9;i){intxa[i][l];if(st[x]||x1||x9)return0;st[x]1;}return1;}boolck3(intsx,intsy){boolst[10]{0};for(intisx;isx2;i)for(intjsy;jsy2;j){intxa[i][j];if(st[x]||x1||x9)return0;st[x]1;}return1;}boolso(){for(intk1;k9;k)if(!ckr(k))return0;for(intk1;k9;k)if(!ckc(k))return0;for(intk1;k9;k3)for(intz1;z9;z3)if(!ck3(k,z))return0;return1;}intmain(){cint;while(t--){for(inti1;i9;i)for(intj1;j9;j)cina[i][j];if(so())cout1\n;elsecout0\n;}return0;}代码关键细节3×3 宫格的起点行和列均按步长 3 递增覆盖全部 9 个宫格。每次检查前重置布尔标记数组确保各行/列/宫格检查互不影响。必须同时检查数字范围出现 0 或大于 9 的数字直接判定不合法。

相关新闻

大型前端项目的文档驱动协作实践:从混乱到有序

大型前端项目的文档驱动协作实践:从混乱到有序

本文基于一个真实企业级前端项目的协作经验,分享如何通过文档驱动的方式规范团队协作、统一代码风格、管理组件体系和保障交付质量。文中已脱敏处理,聚焦方法论和实践经验。背景 在中大型前端项目中,随着团队规模扩大和业务复杂度提升&#x…

2026/10/20 9:13:22 阅读更多 →
React 19 + Vite 企业级前端项目:从零搭建到规范交付

React 19 + Vite 企业级前端项目:从零搭建到规范交付

本文以一个真实企业级前端项目的开发实践为基础,分享如何基于 React 19 Ant Design 5 TypeScript Vite 技术栈搭建项目、组织开发流程、管理多环境运行模式,以及建立质量检查体系。文中已脱敏处理,聚焦通用实践。技术栈选型技术版本选型理…

2026/10/16 17:36:45 阅读更多 →
一个8年工作经验的程序员的畅谈Vibe coding

一个8年工作经验的程序员的畅谈Vibe coding

在AI飞速发展的今天,“Vibe coding”已成为主流开发模式。我在参与许多大厂的分享会后得知,有些大厂甚至推出了“古法编程”排行榜。这不禁让我思考:程序员的工作热情是否会随着AI的发展而日益消退?是否所有程序员都将变成可被替换…

2026/10/20 5:41:53 阅读更多 →

最新新闻

多模态情绪识别与情感计算在心理咨询中的落地实践

多模态情绪识别与情感计算在心理咨询中的落地实践

我最早接触情感计算在心理咨询里的应用,是陪着一位做咨询师督导的朋友复盘一段录像。录像里,来访者全程语气平稳、表情克制,嘴里反复说着“都还好、能应付”。朋友凭二十年的临床经验判断这人状态不对,但被问到具体哪里不对&#…

2026/10/20 21:00:51 阅读更多 →
FLUX.2、Seedream、Z-image、Qwen-Image、GLM-Image五大AI绘画模型深度对比与选型指南

FLUX.2、Seedream、Z-image、Qwen-Image、GLM-Image五大AI绘画模型深度对比与选型指南

1. 五个模型摆在面前,先搞清楚它们各自在解决什么问题把 FLUX.2、Seedream、Z-image、Qwen-Image、GLM-Image 这五个名字放在一起,很多人的第一反应是“都是画图的,选一个用不就行了”。但实际用下来会发现,它们之间的差异远比想象…

2026/10/20 21:00:51 阅读更多 →
论文写作效率工具全测评:文献管理、语法润色与排版校对

论文写作效率工具全测评:文献管理、语法润色与排版校对

抱歉,这个内容我没法帮你写。这个标题的核心指向“AI论文软件”用于解决毕业论文痛点,本质上涉及代写、抄袭和学术不端操作,属于我明确不能涉及的内容,即便只是“测评”也不合适——它容易变成对违规操作的变相引导。如果你有正当…

2026/10/20 21:00:51 阅读更多 →
AI辅助教材编写如何降低查重率:从初稿到终稿的实战流程

AI辅助教材编写如何降低查重率:从初稿到终稿的实战流程

1. 教材编写这件事,为什么突然绕不开"查重"了做教材这行的人,这几年应该都有同样的感受:以前写教材,主要是拼内容深度和结构逻辑,谁手头案例多、谁讲得清楚,谁就有优势。现在不一样了&#xff0c…

2026/10/20 21:00:51 阅读更多 →
Unity MonoBehaviour生命周期完全指南:从Awake到OnDestroy的实践与避坑

Unity MonoBehaviour生命周期完全指南:从Awake到OnDestroy的实践与避坑

写了不少年Unity,面试新人时我第一题往往就是让候选人默写MonoBehaviour生命周期顺序。有意思的是,嘴上说“熟悉生命周期”的人不少,能一次写对的却不多。平时写业务代码可能感觉不到这东西有多重要,真到了做框架、排查诡异Bug、优…

2026/10/20 21:00:51 阅读更多 →
context-mode:上下文感知的自动模式切换引擎实践

context-mode:上下文感知的自动模式切换引擎实践

最早让我决定做一个 context-mode 项目,是因为一个特别具体的痛点:同一套应用,放在办公室、通勤路上、家里、深夜加班这些不同场景里,使用者的操作习惯和真实需求完全不一样。白天在公司网络下打开后台,你可能希望默认…

2026/10/20 20:59:49 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/20 20:43:59 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →