当前位置: 首页 > article >正文

csp信奥赛C++高频考点专项训练之字符串 --【字符统计】:「MYOI-R3」字符串

csp信奥赛C高频考点专项训练之字符串 --【字符统计】「MYOI-R3」字符串题目描述给定字符串s , t s,ts,t。现在你要在s , t s,ts,t中删除一些字符并将它们重新排列使s t stst。问操作后的∣ s ∣ |s|∣s∣即字符串s ss的长度最大是多少输入格式第一行一个字符串s ss。第二行一个字符串t tt。输出格式一行一个整数表示操作后的∣ s ∣ |s|∣s∣的最大值。输入输出样例 1输入 1abc bc输出 12输入输出样例 2输入 2aaaaa bbbbb输出 20说明/提示在第一个样例中将a删除留下bc。此时∣ s ∣ 2 |s|2∣s∣2可以证明这是最优解。在第二个样例中将aaaaa删除留下空串。将bbbbb删除留下空串。此时∣ s ∣ 0 |s|0∣s∣0可以证明这是最优解。本题采用捆绑测试。记n max ⁡ ( ∣ s ∣ , ∣ t ∣ ) n\max(|s|,|t|)nmax(∣s∣,∣t∣)。Subtask \text{Subtask}Subtask$n\le $特殊性质总分值1 1110 1010无25 25252 2210 5 10^5105A \text{A}A25 25253 3310 5 10^5105B \text{B}B25 25254 4410 5 10^5105无25 2525对于100 % 100\%100%的数据1 ≤ ∣ s ∣ , ∣ t ∣ ≤ 10 5 1 \le |s|,|t| \le 10^51≤∣s∣,∣t∣≤105字符串均由小写字母组成。特殊性质A \text{A}As ss是一个a ∼ z \text{a}\sim\text{z}a∼z的排列。特殊性质B \text{B}B保证s i , t i ∈ { a , b } s_i,t_i\in\{\text{a},\text{b} \}si​,ti​∈{a,b}。思路分析题目要求删除两个字符串中的部分字符并重新排列剩下的字符使得两个字符串相等。由于可以任意重排最终字符串的字符组成只取决于两个字符串中字符出现的频数。对于每个字符能保留的最大数量就是两个字符串中该字符出现次数的最小值。因此答案等于所有字符的min(cnt_s[ch], cnt_t[ch])之和。实现步骤读入字符串s和t。用两个长度为 26 的数组a和b分别统计s和t中每个字母出现的次数。遍历 26 个字母累加min(a[i], b[i])到答案。输出答案。时间复杂度 O(|s||t|)空间 O(1)。代码实现#includebits/stdc.husingnamespacestd;string s,t;//两个输入字符串inta[26];//桶a统计s中每个字母出现次数intb[26];//桶b统计t中每个字母出现次数intans0;//最终能得到的字符串长度intmain(){cinst;//读入字符串//统计s中每个字母的出现次数for(inti0;is.size();i){a[s[i]-a];//将字符转换为0~25的下标并累加}//统计t中每个字母的出现次数for(inti0;it.size();i){b[t[i]-a];}//累加每个字母的最小出现次数for(inti0;i26;i){ansmin(a[i],b[i]);//取较小值并累加}coutans;//输出结果return0;}功能分析输入处理从标准输入读取两个字符串s和t。频数统计使用两个整型数组a和b分别记录s和t中每个小写字母a~z出现的次数。通过字符 - a将字符映射到数组下标。答案计算遍历 26 个字母将两个数组对应位置的最小值累加到ans。输出结果打印ans即操作后字符串的最大可能长度。该算法正确解决了问题时间复杂度 O(|s||t|)空间复杂度 O(1)满足题目数据范围|s|,|t| ≤ 10^5可通过所有测试点。【完整系列请查看专栏】信奥赛C普及组CSP-J一等奖通关刷题题单及题解https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转各种学习资料助力大家一站式学习和提升#includebits/stdc.husingnamespacestd;intmain(){cout########## 一站式掌握信奥赛知识! ##########;cout############# 冲刺信奥赛拿奖! #############;cout###### 课程购买后永久学习不受限制! ######;return0;}【秘籍汇总】完整csp信奥赛C学习资料1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转https://edu.csdn.net/course/detail/41081 点击跳转3、csp信奥赛高频考点知识详解及案例实践CSP信奥赛C动态规划https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转CSP信奥赛C标准模板库STLhttps://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转信奥赛C提高组csp-s知识详解及案例实践https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转4、csp信奥赛冲刺一等奖有效刷题题解信奥赛C普及组CSP-J一等奖通关刷题题单及题解https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转信奥赛C提高组csp-j初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转信奥赛C提高组csp-s初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转5、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转GESP(C 七级八级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}

相关文章:

csp信奥赛C++高频考点专项训练之字符串 --【字符统计】:「MYOI-R3」字符串

csp信奥赛C高频考点专项训练之字符串 --【字符统计】:「MYOI-R3」字符串 题目描述 给定字符串 s,ts,ts,t。 现在你要在 s,ts,ts,t 中删除一些字符并将它们重新排列使 ststst。 问操作后的 ∣s∣|s|∣s∣(即字符串 sss 的长度)最大是多少&a…...

实战演练:在快马平台用ai生成vivado uart通信项目,体验完整开发流程

今天想和大家分享一个特别实用的FPGA开发实战经验——如何在InsCode(快马)平台快速搭建一个完整的UART串口通信控制器项目。这个项目不仅包含了Verilog核心代码,还涉及约束文件、测试平台等工程必备要素,特别适合想学习FPGA开发或需要快速验证硬件算法的…...

GEPA实验跟踪与日志系统:如何有效监控和记录优化过程

GEPA实验跟踪与日志系统:如何有效监控和记录优化过程 【免费下载链接】gepa Optimize prompts, code, and more with AI-powered Reflective Text Evolution 项目地址: https://gitcode.com/gh_mirrors/ge/gepa GEPA(GitHub 加速计划)…...

告别混乱标注!用Labelme+Python脚本一键生成COCO格式实例分割数据集

告别混乱标注!用LabelmePython脚本一键生成COCO格式实例分割数据集 在计算机视觉领域,高质量的数据集是模型训练的基础。然而,许多研究者和开发者在创建自定义实例分割数据集时,常常陷入标注格式转换的泥潭。本文将介绍如何利用La…...

别再硬改代码了!Pycharm 2023.3 编辑配置里这个‘形参’功能,5分钟搞定命令行传参

别再硬改代码了!Pycharm 2023.3 编辑配置里这个‘形参’功能,5分钟搞定命令行传参 每次调试Python脚本时反复修改default值,或是临时注释requiredTrue的检查逻辑?这种"暴力调试法"不仅让版本管理变得混乱,更…...

从SMILES字符串到RDKit分子对象:一个关于手性保留的完整处理流程指南

从SMILES字符串到RDKit分子对象:手性保留的完整处理流程指南 在药物设计和计算化学领域,分子手性信息的准确传递常常决定着整个研究项目的成败。一个看似简单的SMILES字符串转换操作,可能在不经意间丢失关键立体化学信息,导致后续…...

i915-sriov-dkms高级配置技巧:自定义虚拟功能数量与资源分配

i915-sriov-dkms高级配置技巧:自定义虚拟功能数量与资源分配 【免费下载链接】i915-sriov-dkms dkms module of Linux i915 driver with SR-IOV support 项目地址: https://gitcode.com/gh_mirrors/i9/i915-sriov-dkms i915-sriov-dkms是一个为Linux i915驱动…...

告别手动截图:3分钟学会从视频中智能提取PPT内容

告别手动截图:3分钟学会从视频中智能提取PPT内容 【免费下载链接】extract-video-ppt extract the ppt in the video 项目地址: https://gitcode.com/gh_mirrors/ex/extract-video-ppt 你是否曾在观看在线课程或会议录像时,想要保存那些一闪而过的…...

3分钟快速指南:如何使用calibre-douban插件一键获取豆瓣图书元数据

3分钟快速指南:如何使用calibre-douban插件一键获取豆瓣图书元数据 【免费下载链接】calibre-douban Calibre new douban metadata source plugin. Douban no longer provides book APIs to the public, so it can only use web crawling to obtain data. This is a…...

如何快速构建专业CMS系统:Cookiecutter模板终极指南

如何快速构建专业CMS系统:Cookiecutter模板终极指南 【免费下载链接】cookiecutter A cross-platform command-line utility that creates projects from cookiecutters (project templates), e.g. Python package projects, C projects. 项目地址: https://gitco…...

Framer Manager:为AI Agent设计的自动化站点管理工具

1. 项目概述:Framer Manager,一个为AI Agent设计的自动化站点管理工具 如果你和我一样,日常运营着几个基于Framer搭建的网站,那么对Framer的编辑器界面一定又爱又恨。爱的是它的设计体验和灵活性,恨的是那些重复性的管…...

@prb/hardhat-template安全最佳实践:避免智能合约常见漏洞的10个方法

prb/hardhat-template安全最佳实践:避免智能合约常见漏洞的10个方法 【免费下载链接】hardhat-template Hardhat-based template for developing Solidity smart contracts 项目地址: https://gitcode.com/gh_mirrors/ha/hardhat-template 在区块链开发领域&…...

新手福音:用快马AI零基础生成你的第一个yw1168登录页面

作为一名刚接触网页开发的新手,最近尝试用InsCode(快马)平台制作了一个简单的yw1168登录页面。整个过程比我预想的顺利很多,特别适合像我这样零基础的小白快速上手。下面分享我的实践过程和学到的知识点: 页面基础结构搭建 登录页面的核心是H…...

终极React Native Elements安全审计指南:从漏洞检测到修复的完整路径

终极React Native Elements安全审计指南:从漏洞检测到修复的完整路径 【免费下载链接】react-native-elements Cross-Platform React Native UI Toolkit 项目地址: https://gitcode.com/gh_mirrors/re/react-native-elements React Native Elements作为跨平台…...

ComfyUI-Manager终极指南:5步快速解决节点安装失败问题

ComfyUI-Manager终极指南:5步快速解决节点安装失败问题 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable various cust…...

逆向工程视角:深度解析百度网盘直链解析技术的演进与实践

逆向工程视角:深度解析百度网盘直链解析技术的演进与实践 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 你是否曾因百度网盘的下载速度限制而感到困扰&#xff1f…...

番茄小说下载器完整指南:5分钟打造个人离线数字图书馆

番茄小说下载器完整指南:5分钟打造个人离线数字图书馆 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 番茄小说下载器是一款功能强大的开源Rust工具,专…...

PopClip扩展开发最佳实践:配置、图标设计到发布的全流程教程

PopClip扩展开发最佳实践:配置、图标设计到发布的全流程教程 【免费下载链接】PopClip-Extensions Source code for extensions in the official PopClip Extensions directory. 项目地址: https://gitcode.com/gh_mirrors/po/PopClip-Extensions PopClip扩展…...

Sparse-BitNet:1.58位量化与半结构化稀疏的模型压缩技术

1. 项目背景与核心价值在边缘计算设备爆炸式增长的今天,模型压缩技术正面临前所未有的挑战。传统量化方法往往在精度和效率之间难以平衡,而稀疏化方案又面临硬件兼容性问题。Sparse-BitNet的创新之处在于将极低位宽量化(1.58位)与…...

终极指南:如何将Electron-React-Boilerplate与Angular无缝整合,构建企业级跨平台应用

终极指南:如何将Electron-React-Boilerplate与Angular无缝整合,构建企业级跨平台应用 【免费下载链接】electron-react-boilerplate A Foundation for Scalable Cross-Platform Apps 项目地址: https://gitcode.com/gh_mirrors/el/electron-react-boil…...

如何高效使用番茄小说下载器:一站式跨平台解决方案指南

如何高效使用番茄小说下载器:一站式跨平台解决方案指南 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 番茄小说下载器是一款基于Rust开发的高性能跨平台工具&…...

液晶LCD1602的测试

1.硬件电路图2.测试程序/************************************************* 文件描述 : LCD1602液晶屏显示字符串八位模式测试程序* 程序文件 : main.c * 版 本 : 1.0* 作 者 : 火龙电子工作室* 日 期 : 2017.01.01* 芯 片 …...

STC89c52RC的看门狗使用方法

核心:控制 WDT_CONTR 寄存器看门狗功能的全部控制都通过一个8位的特殊功能寄存器 WDT_CONTR 实现。定义寄存器地址:由于标准头文件 reg51.h 未包含其定义,使用前需手动声明,其地址为 0xE1sfr WDT_CONTR 0xE1;寄存器结构解析&…...

Qwen-VL多模态模型的空间推理优化与实践

1. 项目背景与核心价值Qwen-VL作为当前多模态领域的前沿模型,其训练过程与空间推理能力的结合一直是计算机视觉和自然语言处理交叉领域的研究热点。这个项目本质上是在探索视觉语言模型(Vision-Language Model)如何通过特定训练策略提升对三维空间关系的理解能力——…...

魔兽争霸3终极优化指南:如何免费解锁180帧流畅体验

魔兽争霸3终极优化指南:如何免费解锁180帧流畅体验 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸3的卡顿和画面限制烦恼吗…...

AI驱动项目规划:从自然语言到交互式可视化蓝图

1. 项目概述:从代码到蓝图,一个AI驱动的项目规划新范式最近在折腾一个挺有意思的开源项目,叫better-plan-mode。这名字听起来有点抽象,但它的核心功能其实非常聚焦:把那些零散、复杂的项目计划,自动转化成清…...

用Python绘制动态边宽的网络图

在数据可视化中,网络图(Network Graph)是一种强大的工具,可以直观地展示节点之间的关系。在Python中,NetworkX和Matplotlib库结合使用可以非常方便地创建和绘制这些图形。今天,我们将探讨如何利用这些工具绘…...

VaR计算总出错?3个R函数致命参数错误,90%金融工程师第2天还在用错

更多请点击: https://intelliparadigm.com 第一章:VaR计算的基本原理与R语言实现概览 什么是VaR Value at Risk(VaR)是一种广泛使用的市场风险度量工具,用于估计在给定置信水平和持有期内,资产组合可能遭…...

OpenAI Translator Bob Plugin语法纠错终极指南:快速提升写作质量的10个技巧

OpenAI Translator Bob Plugin语法纠错终极指南:快速提升写作质量的10个技巧 【免费下载链接】bob-plugin-openai-translator 基于 LLM 的文本翻译、文本润色、语法纠错 Bob 插件,让我们一起迎接不需要巴别塔的新时代!Licensed under CC BY-N…...

AWTRIX 3动画效果制作:从基础到高级的视觉特效完全指南

AWTRIX 3动画效果制作:从基础到高级的视觉特效完全指南 【免费下载链接】awtrix-light Custom firmware for the Ulanzi Smart Pixel clock or self made awtrix. Getting started is easy as 1-2-3 项目地址: https://gitcode.com/gh_mirrors/aw/awtrix-light …...