贪心,后缀

思路:

逆序维护一个数组minn【i】=x,表示第i个位子后边最小的字符是x.

那么对应维护一个栈,如果此时栈顶字符小于等于minn【此时要加入的元素的位子】,那么就出栈,将栈顶这个字符输出;

同时每个字符都在操作结束后入栈。

来源https://blog.csdn.net/mengxiang000000/article/details/70210727

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include<queue>
#include<map>
#include<unordered_map>
#include<stack>
#define DEBUG(x) cout<<#x<<" = "<<x<<endl
using namespace std;
const int MAXN=1e5+10;
char in[MAXN];
char mn[MAXN];///从len-1到i为止最小的字符
map<char,int >mp;
int main()
{
//    freopen("in.txt","r",stdin);stack<char>stk;scanf("%s",in);int l=strlen(in);for(int i=l-1;i>=0;i--){if(i==l-1)mn[i]=in[i];else mn[i]=min(mn[i+1],in[i]);}for(int i=0;in[i]!='\0';i++){
///        stk.push(in[i]);
///如果放在这里,并且当前字符小于等于mn[i],就会导致
///先输出当前字符,而此时栈中可能有更小的字符while(!stk.empty()){if(stk.top()<=mn[i]){printf("%c",stk.top());stk.pop();}else break;}///为什么要放在后面?stk.push(in[i]);}while(!stk.empty()){printf("%c",stk.top());stk.pop();}
}

转载于:https://www.cnblogs.com/MalcolmMeng/p/9975408.html

797C C. Minimal string相关推荐

  1. CodeForces 797C Minimal string

    栈. 先处理一下后缀最小值. 对于每一个字符,如果不是后缀最小值,将栈顶小于当前后缀最小值的都弹出,然后压入当前字符. 如果是后缀最小值,将栈顶小于当前后缀最小值的都弹出,再输出该字符. #inclu ...

  2. Codeforces 797C Minimal string【贪心】

    题意: 给出了字符串s的内容,字符串t,u初始默认为空,允许做两种操作: 1.把s字符串第一个字符转移到t字符串最后. 2.把t字符串最后一个字符转移到u字符串最后. 最后要求s.t字符串都为空,问u ...

  3. [cf797c]Minimal string(贪心+模拟)

    题意: 给出了字符串s的内容,字符串t,u初始默认为空,允许做两种操作: 1.把s字符串第一个字符转移到t字符串最后 2.把t字符串最后一个字符转移到u字符串最后 最后要求s.t字符串都为空,问u字符 ...

  4. Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals) C. String Reconstruction 并查集

    C. String Reconstruction 题目连接: http://codeforces.com/contest/828/problem/C Description Ivan had stri ...

  5. 【CodeForces - 827A】String Reconstruction(并查集合并区间,思维)

    题干: Ivan had string s consisting of small English letters. However, his friend Julia decided to make ...

  6. Codeforces 题目合集+分类+代码 【Updating...】【361 in total】

    961A - Tetris                                                模拟                                      ...

  7. IDA Pro 搜索中文字符串

    IDA Pro 搜索中文字符串 IDA 的字符串窗口默认只能显示英文,网上的一些方法是指定启动时的参数可以显示中文 ida64 -DCULTURE=all ida -DCULTURE=all 还有就是 ...

  8. ida 字符串查找_IDA 搜索中文字符串

    IDA 的字符串窗口默认只能显示英文,网上的一些方法是指定启动时的参数可以显示中文 ida64 -DCULTURE=all ida -DCULTURE=all 还有就是修改 cfg/ida.cfg 文 ...

  9. Codeforces Round 862 (Div. 2) 题解

    目录 A. We Need the Zero(构造) 题面翻译: 思路: 代码: B. The String Has a Target(构造) 题面翻译: 思路: 代码: C. Place for a ...

最新文章

  1. DNA提取方法对浮游生物群落研究结果的影响
  2. 自己写了个nginx启动脚本,shell
  3. 收起 展开 循环 php,CSS3 实现侧边栏展开收起动画
  4. [Java基础]增强for循环
  5. 深度学习之 DCN(Deformable Convolution)-可变形卷积
  6. Polygon对象和Polyline对象的组成形式
  7. 居然之家完成35亿定增 小米、阿里等认购
  8. ES6——Class 笔记
  9. 车联网中如何应用大数据
  10. Linux作业--利用RAID技术实现磁盘阵列的管理方法
  11. php 打印系统变量值,php – Twig:打印变量名为String的变量的值
  12. 【2021最新】4篇图神经网络综述论文,建议收藏!
  13. 中职学校计算机教师 述职报告,中学教师个人述职报告4篇
  14. 机器人的自述作文_关于机器人的说明作文
  15. 在https://m.baidu.com/百度搜索框中输入文字点击搜索,出现如下错误:Message: element not interactable.
  16. 泰国80亿互联网记录数据库泄漏,疑遭黑客攻击
  17. citrixreceiver云桌面系统_基于Citrix的云桌面方案
  18. 生鲜配送如何让“订单管理”变得简单?
  19. HTTP的get和post请求方法以及HTTP接口
  20. websocket 技术文档

热门文章

  1. python编程从入门到精通 叶维忠 pdf-零基础如何学习python?十本精品python书籍推荐...
  2. 全国青少年软件编程python等级考试-全国青少年软件编程等级考试:Python一级考试大纲...
  3. python装饰器原理-看完这篇文章还不懂Python装饰器?
  4. python语言入门与精通-Python从入门到精通
  5. python常用内置函数总结-python 几个常用的内置函数
  6. python的优缺点-Python 有什么一般人不知道的缺点?
  7. pythonweb毕业设计-[分享]我发现了一个快速完成物联网毕业设计的好方法!
  8. python教程书籍-有什么Python学习的书籍和学习资源推荐?
  9. python画双折线图-Python Pandas 时间序列双轴折线图
  10. python 贴吧自动回复机-python实现微信自动回复机器人