原题链接:
https://nanti.jisuanke.com/t/39614

题意:
给出一个长度为n的字符串,找出其中长度为k的字典序最小的子序列。

题解:
设串长为n,则只需删掉 n-k个字符。
用一个单调栈维护,依次将字符串的每个字符插入,如果当前删掉的字符不足 n-k个并且栈顶
元素大于插入的元素,那么删掉栈顶,直至删掉的字符达到n-k或者满足单调栈的性质。
最后取栈里前k个字符输出即可。时间复杂度O(n)左右。

附上AC代码:

#include <bits/stdc++.h>using namespace std;const int maxn=5*1e6+5;char st[maxn];int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);string s;int k;cin>>s>>k;int n=s.length();//获取长度st[0]=s[0];//将第一个字符压入栈中,作为初始化int cnt=1,del=0;int i=1;while(i<n){while(s[i]<st[cnt-1]&&del<n-k)//当栈顶元素大于插入元素,并且删除字符不足n-k{cnt--;//弹出栈顶元素del++;//删除字符数+1}if(cnt<k)//如果还可以插入则插入st[cnt++]=s[i];else//否则相当于删除插入字符del++;i++;}for(int i=0;i<cnt;i++)//按序输出cout<<st[i];return 0;
}

欢迎评论!

计蒜之道2019 复赛 D-星云系统(单调栈)相关推荐

  1. [计蒜之道2019 复赛 A]外教 Michale 变身大熊猫 (线段树求LIS+思维)

    外教变身萌翻小学员,VIPKID "AR 变脸" 打造趣味互动课堂,这是在线少儿英语品牌 VIPKID 全新推出的辅助教学功能--AR 变脸,外教在上课过程中可以随意选取合适的表情 ...

  2. 计蒜之道2019 复赛 A.外教 Michale 变身大熊猫 线段树辅助建分层图dp

    题意:给出一个序列,随机取出其中一条最长上升子序列,问你取到每个数的概率是多少. 说起概率,我们可以尝试去求最长上升子序列的个数,显然每个点被取到的概率是 含有这个点的最长上升子序列个数/总共最长上升 ...

  3. 2016计蒜之道复赛 微信钱包付款

    2016计蒜之道复赛  微信钱包付款 一.题意: 微信钱包付款 给定n(0≤n≤10​10000),求a,,b,c使得a+b+c=n,并且f(a)=f(b)=f(c),f(n)定义为n的各数位的和,例 ...

  4. 计蒜之道2015程序设计大赛初赛第三场——腾讯手机地图

    计蒜之道2015程序设计大赛初赛第三场--腾讯手机地图 (一)题面 腾讯手机地图的定位功能用到了用户手机的多种信号,这其中有的信号的作用范围近,有的信号作用的范围则远一些.有的信号相对于用户在不同的方 ...

  5. 2017 计蒜之道 初赛 第一场 A题B题

    阿里九游开放平台近日上架了一款新的益智类游戏--成三棋.成三棋是我国非常古老的一个双人棋类游戏,其棋盘如下图所示: 成三棋的棋盘上有很多条线段,只能在线段交叉点上放入棋子.我们可以用坐标系来描述棋盘: ...

  6. 2020 计蒜之道 预赛 第一场 A. 五子棋

    2020 计蒜之道 预赛 第一场 A. 五子棋 题目链接 计蒜之道程序设计大赛已经迎来了第六届,蒜头君很开心,决定带上好友们一起下一把 五子棋,并由自己来担任裁判.五子棋的规则为:双方分别使用黑白两色 ...

  7. 2016 计蒜之道 初赛 第五场

    2016 计蒜之道 初赛 第五场 腾讯推出了一款新游戏:勇者的故事.在游戏里有一个勇者,要去挑战大魔王.大魔王有 nnn 支护卫队,第 iii 支护卫队里有 mim_im​i​​ 只恶魔.勇者和恶魔都 ...

  8. 2019 计蒜之道 复赛 D——“星云系统”(单调栈||队列+贪心)

    19.97% 1000ms 131072K VIPKID 是在线少儿英语教育平台,网络稳定是在线教育课程质量的红线,VIPKID 为此推出了全球最稳定的教育网络系统 -- "星云系统&quo ...

  9. 2019年第五届计蒜之道复赛总结

    又是一年计蒜客,沙雕ACMer欢乐多 热心市民yzm10按捺不住冲动,在期末期间又打了一场比赛. 赛点:204(与罚时惊人的相似) 做完两题排在一百多名,以为稳了(其实后面做不动了)比到一半就开始挂机 ...

最新文章

  1. GitHub直接查看HTML【项目网站一种制作方法】
  2. 关于K8s技术架构的几个问题
  3. RPGViewer - 反馈页面
  4. 转录组测序day 1 基础知识
  5. 目标检测论文解读复现之十四:一种基于残差网络优化的航拍小目标检测算法
  6. php制作登录页面的过程_PHP实现简单登录界面
  7. 【微信小程序开发】IOS与安卓样式兼容问题
  8. 制作个人网页过程(附源码)
  9. python使用列表,快速获取1到10的平方
  10. ON1 Photo RAW 2021 15.0.0.9735 快速的 RAW 照片编辑器
  11. Firefly-RK3399 USB摄像头驱动及SimpleCV安装测试
  12. 基于springboot+vue的疾病匿名检测查询系统
  13. pdf操作之根据关键词签章
  14. 实在智能“信创RPA”完成国产化流程全适配,加入ISV华为鲲鹏展翅伙伴
  15. 转载——Cisco ASA5510防火墙IP secure 配置
  16. Unity3D官方资源包的下载以及从Asset Store下载后存在的位置查找
  17. vue-draggable的多列拖动与拷贝拖拽(不删除源数据列)
  18. 利用DRP动态调整MMCME2时钟频率
  19. 移动端图形化报表界面设计_移动端几种常见的界面设计布局
  20. CSDN博客新增自定义博客专栏模块,方便快捷一站式~

热门文章

  1. MineMap地图web端定位问题处理
  2. Caused by: java.lang.NoClassDefFoundError: org/apache/curator/framework/CuratorFrameworkFactory
  3. 工信部域名icp查询 在哪查询域名icp信息
  4. eclipse的初始化配置
  5. 外贸网站优化-外贸网站优化教程-外贸网站优化软件
  6. 指针与引用有什么区别?
  7. HTML做跳转另一个页面链接,html中如何链接到另一个页面
  8. 社区保密计算机使用制度,社区保密制度
  9. MIPI转换芯片、ICN6211、ICN6202、MIPI转RGB、MiPI转LVDS、分辨率最高1080P、MIPI转双路LVDS
  10. 从程序员之死看 IT 人士如何摆脱低情商诅咒——转载自CSDN官方博客