计蒜之道2019 复赛 D-星云系统(单调栈)
原题链接:
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-星云系统(单调栈)相关推荐
- [计蒜之道2019 复赛 A]外教 Michale 变身大熊猫 (线段树求LIS+思维)
外教变身萌翻小学员,VIPKID "AR 变脸" 打造趣味互动课堂,这是在线少儿英语品牌 VIPKID 全新推出的辅助教学功能--AR 变脸,外教在上课过程中可以随意选取合适的表情 ...
- 计蒜之道2019 复赛 A.外教 Michale 变身大熊猫 线段树辅助建分层图dp
题意:给出一个序列,随机取出其中一条最长上升子序列,问你取到每个数的概率是多少. 说起概率,我们可以尝试去求最长上升子序列的个数,显然每个点被取到的概率是 含有这个点的最长上升子序列个数/总共最长上升 ...
- 2016计蒜之道复赛 微信钱包付款
2016计蒜之道复赛 微信钱包付款 一.题意: 微信钱包付款 给定n(0≤n≤1010000),求a,,b,c使得a+b+c=n,并且f(a)=f(b)=f(c),f(n)定义为n的各数位的和,例 ...
- 计蒜之道2015程序设计大赛初赛第三场——腾讯手机地图
计蒜之道2015程序设计大赛初赛第三场--腾讯手机地图 (一)题面 腾讯手机地图的定位功能用到了用户手机的多种信号,这其中有的信号的作用范围近,有的信号作用的范围则远一些.有的信号相对于用户在不同的方 ...
- 2017 计蒜之道 初赛 第一场 A题B题
阿里九游开放平台近日上架了一款新的益智类游戏--成三棋.成三棋是我国非常古老的一个双人棋类游戏,其棋盘如下图所示: 成三棋的棋盘上有很多条线段,只能在线段交叉点上放入棋子.我们可以用坐标系来描述棋盘: ...
- 2020 计蒜之道 预赛 第一场 A. 五子棋
2020 计蒜之道 预赛 第一场 A. 五子棋 题目链接 计蒜之道程序设计大赛已经迎来了第六届,蒜头君很开心,决定带上好友们一起下一把 五子棋,并由自己来担任裁判.五子棋的规则为:双方分别使用黑白两色 ...
- 2016 计蒜之道 初赛 第五场
2016 计蒜之道 初赛 第五场 腾讯推出了一款新游戏:勇者的故事.在游戏里有一个勇者,要去挑战大魔王.大魔王有 nnn 支护卫队,第 iii 支护卫队里有 mim_imi 只恶魔.勇者和恶魔都 ...
- 2019 计蒜之道 复赛 D——“星云系统”(单调栈||队列+贪心)
19.97% 1000ms 131072K VIPKID 是在线少儿英语教育平台,网络稳定是在线教育课程质量的红线,VIPKID 为此推出了全球最稳定的教育网络系统 -- "星云系统&quo ...
- 2019年第五届计蒜之道复赛总结
又是一年计蒜客,沙雕ACMer欢乐多 热心市民yzm10按捺不住冲动,在期末期间又打了一场比赛. 赛点:204(与罚时惊人的相似) 做完两题排在一百多名,以为稳了(其实后面做不动了)比到一半就开始挂机 ...
最新文章
- 几款Java手机看书软件(一)
- Linux下安装Redis数据库
- ubuntu下minicom的安装及使用
- Windows Redis3 安装
- java中string类的常用方法举例说明
- 鸿蒙造化什么意思,大家说鸿蒙造化决,和鸿蒙天地有关系吗
- 从GDPR和个保法看,为什么要做数据合规?
- wps可以登录网页版_wps网页版入口_WPS个人免费版_点点游
- 无桥PFC的优势及解决方案
- java swing实现的简单音乐播放器源码附带视频指导教程
- 力扣347——前K个高频元素
- Aborted(core dumped)
- react通过hook实现父组件调用孙子组件方法(非redux)
- 维度建模——维度建模与数据仓库概述
- [pandas基础]Pandas Series和Pandas DataFrame基础操作
- WinCE流驱动基础知识小结
- Error response from daemon: readlink /var/lib/docker/overlay2/l/OEK3ESNVLXTTUOL6PIEXF2S6VF: invalid
- phpcms-前台模板调用和后台模板调用
- SOA 和微服务有何区别?
- git使用之fatal: Authentication failed for 【】异常
热门文章
- 面试10家拿到了7家Offer,到底经历了什么?
- 台式计算机虚拟内存怎么设置,电脑虚拟内存怎么设置
- 机原、机设的主干知识_简要复习笔记
- w10不能访问网络计算机,win10系统无法访问局域网电脑的具体教程
- access9磅字体是多_word字体中几号字与多少磅的对应关系
- 泰山OFFICE技术讲座:行距,五号、小四时还正常,四号时大幅增加,这是为什么?
- 网易前端微专业,JavaScript程序设计:JS调试
- NoSQL数据库知多少--KV存储数据库LevelDB
- pads option选项卡下部分英文释义
- Photoshop如何使用绘画和图像修饰之实例演示?