日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時間:2023/12/9 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [cf797c]Minimal string(贪心+模拟) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題意:

給出了字符串s的內(nèi)容,字符串t,u初始默認(rèn)為空,允許做兩種操作:

1、把s字符串第一個字符轉(zhuǎn)移到t字符串最后

2、把t字符串最后一個字符轉(zhuǎn)移到u字符串最后

最后要求s、t字符串都為空,問u字符串字典序最小能是多少。

解題關(guān)鍵:

主要就是貪心,按字典序,每貪心完一個字母,往前回溯一次。

1、hash一下每個字母出現(xiàn)的次數(shù),然后貪心選擇字典序最小的即可。

2、預(yù)處理每個位置能達(dá)到的最小的字母,然后貪心。tmp一定是一個單調(diào)不減的數(shù)組。

3、小于等于而不是等于的原因是abacd這種情況。

反思:

1、這種看似簡單的模擬題一定要搞明白,自己寫一下。類似于棧混洗。

2、string的這種類似java和python的用法

法1:

1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 stack<char>s1; 5 int m1[300]; 6 int cnt=0; 7 char s2[100020]; 8 int main(){ 9 string s; 10 int nn=0; 11 cin>>s; 12 for(int i=0;s[i];i++) m1[s[i]-'a']++; 13 while(!m1[nn]&&nn<26)nn++; 14 for(int i=0;s[i];i++){ 15 if(s1.empty()||m1[nn]){ 16 s1.push(s[i]); 17 m1[s[i]-'a']--; 18 } 19 while(!s1.empty()&&s1.top()<=nn+'a'){//改成小于等于就過了 20 s2[cnt++]=s1.top(),s1.pop(); 21 while(!m1[nn]&&nn<26)nn++; 22 } 23 while(!m1[nn]&&nn<26)nn++; 24 } 25 while(!s1.empty()) s2[cnt++]=s1.top(),s1.pop(); 26 printf("%s\n",s2); 27 }

法二:

1 #include<bits/stdc++.h> 2 #define inf 0x3f3f3f3f 3 using namespace std; 4 typedef long long ll; 5 stack<char>ss; 6 char tmp[100010],x; 7 int main(){ 8 string s; 9 cin>>s; 10 x='z'+5; 11 for(int i=s.size()-1;i>=0;i--) x=min(x,s[i]),tmp[i]=x;//tmp[i]代表該位置能使結(jié)果到達(dá)最小的值 12 string ans=""; 13 for(int i=0;i<s.size();i++){ 14 while(!ss.empty()&&ss.top()<=tmp[i]) ans+=ss.top(),ss.pop(); 15 ss.push(s[i]); 16 } 17 while(!ss.empty()) ans+=ss.top(),ss.pop(); 18 cout<<ans<<"\n"; 19 return 0; 20 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/elpsycongroo/p/7702989.html

總結(jié)

以上是生活随笔為你收集整理的[cf797c]Minimal string(贪心+模拟)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲熟女乱色一区二区三区 | 亚洲天堂影视 | 亚洲系列在线观看 | 日本美女操 | xxx一区二区 | 婷婷丁香色 | 亚洲风情第一页 | 插插插日日日 | 国产精品午夜电影 | 中文字幕在线播放一区 | 国产精品一区不卡 | 国产叼嘿视频在线观看 | 国产一区二区视频在线观看 | 国产一级视频 | 成人午夜激情网 | 五月婷婷啪啪 | 欧美日韩亚洲精品内裤 | 欧日韩精品 | 国产综合视频一区 | 成人性生交大片免费卡看 | 1024金沙人妻一区二区三区 | 大陆熟妇丰满多毛xxxⅹ | 免费观看色 | 久久在线一区二区 | 51吃瓜网今日 | 在线观看日韩av电影 | 色94色欧美sute亚洲线路二 | www.久久爱 | 99热都是精品 | 国产成人一级 | 日日碰日日操 | 国产av一区二区三区传媒 | 日韩免费视频一区二区 | 三级黄色短视频 | caoporm超碰| 91黄色入口 | 国产亚洲制服欧洲高清一区 | 欧美乱轮 | 鲁鲁在线 | 亚洲国产精品久久久久久6q | 炕上如狼似虎的呻吟声 | 亚洲综合影院 | www.久久久久久久 | 性色av一区二区三区在线观看 | 国产精品一区在线播放 | 精品欧美一区二区精品久久 | 不卡的一区二区 | 国产欧美又粗又猛又爽 | 91国内视频| 色婷婷激情综合 | 五月天六月婷 | www.黄色国产| 欧美精品a区 | av黄色片 | 少妇精品亚洲一区二区成人 | 波多野结衣一二三区 | 正在播放av | 免费一区 | 亚洲五月天综合 | 毛利兰被扒开腿做同人漫画 | av网天堂| 在线黄色观看 | 久久久99精品国产一区二区三区 | 国产1区在线 | 中文字幕韩日 | 4438亚洲最大 | 人人草人人干 | 天天操中文字幕 | 色播视频在线观看 | 欧美日韩成人精品 | 欧美日韩中文字幕在线视频 | 亚洲精品欧美精品 | 日韩欧美综合在线 | 奇米影视999 | 龚玥菲三级露全乳视频 | 久久在线一区二区 | 操屁股视频 | 亚洲AV成人无码网站天堂久久 | 日韩一道本 | 日本www网站 | 午夜激情视频在线播放 | 黄色在线免费视频 | 天天干天天噜 | 欧美人妖老妇 | 国产美女黄网站 | 色伊人久久 | 久章草影院 | 国产精品字幕 | 三区在线观看 | 97在线看 | 精品+无码+在线观看 | 91tv在线| 婷婷激情小说 | 国产精品8888 | 你懂得在线 | 69视频网站 | 不卡视频一区二区三区 | 色播激情网 | 免费又黄又爽又猛大片午夜 |