C. Minimal string
来源:互联网 发布:c语言倒九九乘法表 编辑:程序博客网 时间:2024/06/08 15:13
题解:扫一遍,然后记录每个字母出现的次数。每次对某一个字母进行操作后,该字母次数减一。
可以想到,要找最小的字典序序列,只需要每次找最小的字母并且压入结果字符串即可。字母权值为第一优先度
代码如下:
#include <iostream>#include <stack>using namespace std;string s,ans;stack<char> t;int arr[30]={0};int find( ){ int i=0; while(arr[i]==0) i++; return i;}void solve( ){ int i=0; while(i<s.size()) { if(t.size()==0) { t.push(s[i]); arr[s[i]-'a']--; i++; } else { int temp=t.top()-'a'; int tt=0; for(int j=0;j<temp;j++) { if(arr[j]>0) tt=1; } if(tt) { t.push(s[i]); arr[s[i]-'a']--; i++; } else { ans+=t.top(); t.pop(); } } } while(t.size()) { ans+=t.top(); t.pop(); } cout<<ans<<endl;}int main( ){ for(int i=0;i<30;i++) arr[i]=0; cin>>s; for(int i=0;i<s.size();i++) { arr[s[i]-'a']++; } solve( ); return 0;}
0 0
- C. Minimal string
- 797C Minimal string
- Codeforces 797C-Minimal string
- CodeForces 797C Minimal string
- Educational Codeforces Round 19 C. Minimal string
- Codeforces 797C Minimal String 贪心+模拟
- Codeforces 797C Minimal string【贪心】
- Educational Codeforces Round 19 C. Minimal string
- Codeforces 797C Minimal String 贪心
- Codeforces 797C Minimal string 简单模拟
- Minimal string
- Minimal string
- Minimal string
- 【CodeForces 797C】Minimal string(贪心+字符串)
- Minimal string CodeForces
- CentOS7 minimal静默安装Oracle 12c
- 1.Minimal Number of Palindromes on a String(dp)
- c++String
- 455
- 第六弹:微信小程序开发思考总结—“文章阅读器和电影信息”项目实践---项目结束和补充总结
- mysql关键字 exists 与 in
- 【剑指】01-替换空格
- Java 8并发工具包漫游指南
- C. Minimal string
- nyoj 58 最少步数
- CSS选择器
- eclipse 无法解析导入 javax.servlet 的解决方法
- UESTC
- Android中的强弱引用计数(强弱指针)
- 管理类联考笔试考试大纲
- 浅谈安卓Canvas,模拟心电图的绘制
- Oracle数据库保存、下载图片