news 2026/6/17 7:40:35

算法竞赛备考冲刺必刷题(C++) | 洛谷 P1323 删数问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
算法竞赛备考冲刺必刷题(C++) | 洛谷 P1323 删数问题

本文分享的必刷题目是从蓝桥云课洛谷AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。

欢迎大家订阅我的专栏:算法题解:C++与Python实现!

附上汇总贴:算法竞赛备考冲刺必刷题(C++) | 汇总


【题目来源】

洛谷:P1323 删数问题 - 洛谷

【题目描述】

一个集合有如下元素:1 11是集合元素;若P PP是集合的元素,则2 × P + 1 2\times P+12×P+14 × P + 5 4\times P+54×P+5也是集合的元素。

取出此集合中最小的k kk个元素,按从小到大的顺序组合成一个多位数,现要求从中删除m mm个数位上的数字,使得剩下的数字最大,编程输出删除前和删除后的多位数字。

注:不存在所有数被删除的情况。

【输入】

只有一行两个整数,分别代表k kkm mm

【输出】

输出为两行两个整数,第一行为删除前的数字,第二行为删除后的数字。

【输入样例】

5 4

【输出样例】

137915 95

【算法标签】

《洛谷 P1323 删数问题》 #模拟# #字符串# #贪心# #优先队列# #队列#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;#defineintlonglong// 定义int为long long类型intk,m,a[30005];// k: 需要生成的序列长度, m: 可以删除的字符数, a: 存储生成的序列priority_queue<int,vector<int>,greater<int>>pq;// 小根堆,用于生成序列string ans;// 合并后的字符串stack<char>sta;// 栈,用于删除字符的贪心算法// 初始化函数:生成特定序列voidinit(){pq.push(1);// 初始元素1入堆for(inti=1;i<=30000;i++)// 生成30000个序列元素{a[i]=pq.top();// 取出当前最小值pq.pop();// 弹出最小值// 根据规则生成新的元素pq.push(2*a[i]+1);pq.push(4*a[i]+5);}}signedmain()// 因为使用了#define int long long,所以用signed main{cin>>k>>m;// 输入k和minit();// 生成序列// 第一部分:将前k个序列元素拼接成字符串for(inti=1;i<=k;i++)ans+=to_string(a[i]);cout<<ans<<endl;// 输出拼接后的字符串// 第二部分:删除m个字符,使剩下的字符串字典序最大for(inti=0;i<ans.size();i++)// 遍历字符串{// 贪心策略:当栈顶字符小于当前字符且还有删除次数时,弹出栈顶while(sta.size()&&sta.top()<ans[i]&&m){sta.pop();m--;}sta.push(ans[i]);// 当前字符入栈}// 处理剩余未删除的字符(如果m>0,从末尾删除)while(m>0&&!sta.empty()){sta.pop();m--;}// 从栈中取出结果字符串string s="";while(sta.size()){s=sta.top()+s;// 注意顺序,栈顶是最后入栈的sta.pop();}cout<<s<<endl;// 输出最终结果return0;}

【运行结果】

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

PYCHARM激活模拟器:安全测试你的激活方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个PYCHARM激活沙盒环境&#xff0c;能够在虚拟系统中测试各种激活方法而不影响主机。要求支持快速创建/销毁PYCHARM测试环境&#xff0c;记录激活过程日志&#xff0c;并提供…

作者头像 李华
网站建设 2026/6/12 19:37:42

救命神器2026专科生必看!9款一键生成论文工具TOP9测评

救命神器2026专科生必看&#xff01;9款一键生成论文工具TOP9测评 2026年专科生论文写作工具测评&#xff1a;如何选对“救命神器”&#xff1f; 随着高校教育的不断深化&#xff0c;专科生在学术写作上的需求日益增长。然而&#xff0c;面对繁重的课程任务与论文压力&#xff…

作者头像 李华
网站建设 2026/6/13 7:04:47

CRNN在古籍文献数字化中的挑战

CRNN在古籍文献数字化中的挑战 &#x1f4d6; 技术背景&#xff1a;OCR文字识别的演进与瓶颈 光学字符识别&#xff08;OCR&#xff09;作为连接物理文本与数字信息的关键技术&#xff0c;已广泛应用于文档扫描、票据识别、智能办公等场景。传统OCR系统依赖于图像预处理模板匹…

作者头像 李华
网站建设 2026/6/16 21:12:48

宽禁带半导体材料与器件技术:氧化锌

一、氧化锌材料概述与特性 氧化锌&#xff08;ZnO&#xff09;是一种II-VI族宽禁带半导体材料&#xff0c;室温下禁带宽度约为3.37 eV&#xff0c;激子束缚能高达60 meV。这种独特的性质使其在光电子器件&#xff08;如发光二极管、激光器&#xff09;、压电器件和透明导电薄膜…

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

零基础入门Llama Factory:10分钟快速搭建微调环境

零基础入门Llama Factory&#xff1a;10分钟快速搭建微调环境 如果你刚接触大模型微调&#xff0c;面对复杂的依赖安装和环境配置感到无从下手&#xff0c;那么Llama Factory可能是你的理想选择。作为一个开源的大模型微调框架&#xff0c;它简化了从环境搭建到模型训练的整个流…

作者头像 李华