給你乙個棧和n個數,按照n個數的順序入棧,你可以選擇在任何時候將數
出棧,使得出棧的序列的字典序最大。
輸入格式:
輸入共2行。
第一行個整數n,表示入棧序列長度。
第二行包含n個整數,表示入棧序列。
輸出格式:
僅一行,共n個整數,表示你計算出的出棧序列。
輸入樣例#1:
32 1 3
輸出樣例#1:
3 1 2
對於100%的資料, 1 ≤ n≤ 10 6 , 所有讀入的數字互不重複即一定是個排列。
1 #include 2 #include 3using
namespace
std;
4int
const max = 1e6 + 2;5
intcur[max], pos[max], num[max];
6 stack s;
7int
main()820
else
2125}26
for(int j = 0, i = 0; i < n; i++)
2733
if(i != n - 1)34
38else
39 printf("
%d\n
", s.top());40}
41 }
1297 子串的最大出現次數
給你乙個字串s,請你返回滿足以下條件且出現次數最大的任意子串的出現次數 示例 1 輸入 s aababcaab maxletters 2,minsize 3,maxsize 4輸出 2解釋 子串 aab 在原字串 現了 2 次。它滿足所有的要求 2 個不同的字母,長度為 3 在 minsize 和 ...
1297 子串的最大出現次數
題目描述 給你乙個字串 s 請你返回滿足以下條件且出現次數最大的 任意 子串的出現次數 子串中不同字母的數目必須小於等於 maxletters 子串的長度必須大於等於 minsize 且小於等於 maxsize 示例 1 輸入 s aababcaab maxletters 2,minsize 3,m...
1297 子串的最大出現次數
給你乙個字串 s 請你返回滿足以下條件且出現次數最大的 任意 子串的出現次數 子串中不同字母的數目必須小於等於 maxletters 子串的長度必須大於等於 minsize 且小於等於 maxsize 示例 1 輸入 s aababcaab maxletters 2,minsize 3,maxsiz...