快乐AK场2 E 删删删越小越好 单调栈
生活随笔
收集整理的這篇文章主要介紹了
快乐AK场2 E 删删删越小越好 单调栈
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
鏈接:https://ac.nowcoder.com/acm/contest/11471/E
來源:牛客網
這一天Kadia與Majiagou在教學弟,
突然提出了一個問題 給你一個超大的數字 讓你從中刪掉幾位 怎么讓他最小?
這種簽到題不會還有人寫不出來吧 不會吧不會吧
題解:考慮單調棧,如果新來的比棧頂元素小就退棧。當然為了省事就用deque寫了。
#include<bits/stdc++.h> using namespace std; deque<char> s; string str; int k; int main(){cin>>str>>k;s.push_back(str[0]);int c=k;for(int i=1;i<str.size();i++){while(!s.empty() && (str[i]-'0')<(s.back()-'0') && c>0){c--;s.pop_back();}s.push_back(str[i]);// s.push(str[i])}bool f=0;for(int i=0;i<s.size()-c;i++) {if(f || s[i]!='0' || i==s.size()-c-1) putchar(s[i]);if(s[i]!= '0') f=1;// putchar(s[i]);}return 0; }總結
以上是生活随笔為你收集整理的快乐AK场2 E 删删删越小越好 单调栈的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 扛住100亿次请求——如何做一个“有把握
- 下一篇: SRM694