P1106 删数问题(栈)

news/2025/2/26 19:58:04/文章来源:https://www.cnblogs.com/gxjcnblogs/p/18739481

P1106 删数问题

题目描述

键盘输入一个高精度的正整数 \(n\)(不超过 \(250\) 位),去掉其中任意 \(k\) 个数字后剩下的数字按原左右次序将组成一个新的非负整数。编程对给定的 \(n\)\(k\),寻找一种方案使得剩下的数字组成的新数最小。

输入格式

输入两行正整数。

第一行输入一个高精度的正整数 \(n\)

第二行输入一个正整数 \(k\),表示需要删除的数字个数。

输出格式

输出一个整数,最后剩下的最小数。

输入输出样例 #1

输入 #1

175438 
4

输出 #1

13

说明/提示

\(\operatorname{len}(n)\) 表示 \(n\)位数,保证 \(1 \leq k < \operatorname{len}(n) \leq 250\)
这道题要用单调栈维护递减序列,这道题要注意k的大小,有可能k没有用完,而且还有前导零的情况,还有结果只有零的情况

#include<stack>
#include<iostream>
#include<string>
using namespace std;
int a[500];
int main(){string str;int k;cin>>str>>k;stack<int>s;for(int i=0;i<str.size();i++){while(!s.empty()&&k>0&&s.top()>str[i]-'0')s.pop(),k--;s.push(str[i]-'0');}int cnt=0;while(!s.empty()){a[++cnt]=s.top();s.pop();}while(a[cnt]==0)cnt--;//处理前导零for(int i=cnt;i>=k+1;i--)cout<<a[i];if(cnt<k+1)cout<<0;//结果是零return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/890269.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redis - [10] 持久化

redis是一个内存数据库,断电即失。需要持久化到磁盘中。 001 || RDB 在执行的时间间隔内将内存中的数据集快照写入到磁盘(快照),恢复时是将快照文件直接读到内存中。 Redis会单独创建(fork)一个子进程进行持久化,会先将数据写入到一个临时文件中,待持久化过程都结束了…

小红书独立开发大赛:让你的宝藏应用被更多人看到

无论你是业余在做一款 passion project 的 builder,还是试图 bootstrapping 自己造血的小团队。小红书发起的首届独立开发大赛都值得你关注。最近越来越多的社区开发者说,他们会选择在小红书冷启动自己的项目,因为这里能获取到友善的初期反馈和精准的早期用户。这些反馈和用…

博客作业:软件缺陷分析与二次开发实践(图书管理系统)

(1)来源 本次分析的代码来源于网络上的一个C++书籍购买系统项目。该项目模拟了不同用户类型(如会员、贵宾、学生等)购买书籍时的折扣计算和购买记录保存功能。原始代码虽能运行,但存在一些设计缺陷和潜在问题。 (2)运行环境+运行结果截图 运行环境: 环境:Windows 11 +…

博客添加看板娘

{% note info flat %} 本文转载自偷掉月亮的阿硕,本博客看板娘基于该教程搭建。 文章作者: 偷掉月亮的阿硕 文章链接: https://moonshuo.cn/posts/16544.html {% endnote %}

预祝2025省选嗨翻天

预祝2025省选嗨翻天\(T1\) A. 单峰序列 \(8pts\)部分分\(8pts\) :枚举每个数在单峰序列的左边还是右边,求次数做法同 luogu P3531 [POI 2012] LIT-Letters 。点击查看代码 int a[500010],b[500010],c[500010],ans[500010],id; vector<int>l,r; struct BIT {int c[50001…

配置github图床+picgo-core上传+jsdelivr

GitHub图床GitHub图床部分参考自教程Github图床+PicGo+JsDelivr+imgbot+automerge-action.imgbot图片压缩图片压缩部分参考自教程Github图床+PicGo+JsDelivr+imgbot+automerge-action.automerge-action最新版地址https://github.com/marketplace/actions/merge-pull-requests-a…

让博客在关键日子弹窗-变灰-放烟花

本文大体上参考自[1],新增了放烟花功能。前置教程 参见[1:1]。 {% note warning flat%}SweetAlert库应该在day.js和lunar.js前面引入!{% endnote %} 放烟花实现SweetAlert2库[2],支持弹窗含有图片,也就是可以弹窗一个放烟花的gif,当然你也可以使用html的visible属性来可视化…

2025中国十大HR SaaS厂商,企业应该如何选择最佳合作伙伴

人力资源软件供应商的价值已远超工具范畴——它们是组织能力的“放大器”、管理革命的“催化剂”。在数字化转型中,企业通过与其深度合作,不仅能实现运营效率的指数级提升,更将人力资本转化为战略资产,构建起适应AI时代的核心竞争力。选择与怎样的供应商同行,将直接决定企…

redis - [09] redis.conf详解

题记部分 配置文件unit单位对大小写不敏感。可以将多个配置文件配置进来绑定ip保护模式 & 端口守护进程,默认是no,需要改成yes如果需要后台运行,需要制定进程文件(pid)指定日志级别,生产环境默认notice。logfile: 日志文件位置名配置数据库的数量,默认16个是否总是…

试用一下Qexo这个Hexo博客内容管理系统

本文由Qexo书写并发布。Qexo介绍 Qexo | 一个美观、强大的在线 静态博客 管理器 (oplog.cn) 本文就不详细介绍Qexo了,官方文档写的很清晰了2333测试样式 测试一下github markdown样式是否正确显示。 This README can be used as a reference for github-flavored-markdown sty…

双链表与双循环链表的C语言实现

双链表与双循环链表的C语言实现 目录双链表与双循环链表的C语言实现双链表的增删查改双循环链表的增删查改 双链表的增删查改 /*双链表*/#include<stdio.h> #include<stdlib.h>typedef struct Node{int data;struct Node* pre;struct Node* next; }Node;Node* init…