現在給定你乙個字串s以及乙個整數k,請求出s的字典序最小的長度為k的子串行。
題目鏈結
第一行乙個由小寫英文本母構成的字串s,第二行乙個正整數k。
一行乙個字串ans,表示答案。
0helloworld
5ellld
設串長為n,則只需刪掉n-k個字元。
用乙個單調棧維護,依次將字串的每個字元插入,如果當前刪掉的字元不足n-k個並且棧頂元素》插入的元素,那麼刪掉棧頂,直至刪掉的字元達到n-k或者滿足單調棧的性質。
最後取棧裡前k個字元輸出即可。
直接用字元陣列模擬單調棧即可,此題的資料範圍用stl會爆的!!!
#include #include #include #include #include #include #include #include #include #include #include using namespace std;
int main()
{ string s;
char str[5000005];//用於模擬單調棧
int n,i;
cin >> s;
scanf(「%d」, &n);
int len = s.length();
int flag = len - n;//統計還可以刪掉多少個字元
int point = 0;//用於指向當前的棧頂位置
str[0] = s[0];
for (i=1;ip.s. 請忽略那麼多的include,僅僅是因為懶得選,所以無論做什麼題目都是這乙個模版直接全加上?
2019 計蒜之道 複賽 D 「星雲系統」
全世界的中心傳輸節點和各地的網路節點組成的這個 星雲系統 何其複雜。我們現在只考慮一條支線上的網路節點,每乙個網路節點比作乙個字元的話,這條支線就是乙個字串。現在給定你乙個字串 ss 以及乙個整數 kk,請求出 ss 的字典序最小的長度為 kk 的子串行。第一行乙個由小寫英文本母構成的字串 ss,第...
計蒜客 2019計蒜之道D
題意 現在給定你乙個字串 s ss 以及乙個整數 k kk,請求出 s ss的字典序最小的長度為 k kk的子串行。資料範圍 0 s 5000000 00 s 5000 000 樣例輸入 helloworld 5樣例輸出 ellld思路 假如我們先不考慮長度為k的限制我們應當怎麼做?我們以樣例為例子...
計蒜之道複賽 B D F
b題是乙個簡單的模擬 求一下兩個點中間每過deta的整數點 然後更新一下每個點的最後一次經過就好了 1 include2 define cl a,b memset a,b,sizeof a 3 define debug x cerr x x 4 using namespace std 56 cons...