題目描述
給定乙個十進位制的正整數number,選擇從裡面去掉一部分數字,希望保留下來的數字組成的正整數最大。
輸入描述:
輸入為兩行內容,第一行是正整數number,1 ≤ length(number) ≤ 50000。第二行是希望去掉的數字數量cnt 1 ≤ cnt < length(number)。
輸出描述:
輸出保留下來的結果。
示例1
輸入325 1
輸出 35
#include
#include
using
namespace
std;
/*思路:例如數字51643,需要刪除3位數而使剩下的數字組合最大,
此時需要從頭開始兩個數字比較大小, 如果當前數字比其下一位小,
則刪除當前數字,此時變為5643,繼續從頭開始遍歷,5比6小,則刪
除5,變為643繼續從頭遍歷,當走到4的位置發現4比3大,而且4已
經是倒數第二位數字,則刪除最後一位數字,就得到了64*/
int main()
}if (j == length - 1) //例如51643,當j到數字倒數第二位時,4比3大,此時要刪除3,
number.erase(number.end() - 1);
j--; //每次都需要j--使j從數字的開始遍歷。
}cout
<< number;
}return
0;}
保留最大數
輸入為兩行內容,第一行是正整數number,1 length number 50000。第二行是希望去掉的數字數量cnt 1 cnt length number 輸出保留下來的結果。示例1 325 1 35分析 每次將數字的第乙個字元和第二個字元比較,如果第乙個字元小於第二個字元,則刪除第乙個字元,...
nowcoder 2017校招真題 保留最大的數
給定乙個十進位制的正整數number,選擇從裡面去掉一部分數字,希望保留下來的數字組成的正整數最大。輸入為兩行內容,第一行是正整數number,1 length number 50000。第二行是希望去掉的數字數量cnt 1 cnt length number 輸出保留下來的結果。輸入325 1 輸...
newCoder 2017春招真題 保留最大的數
題目描述 給定乙個十進位制的正整數number,選擇從裡面去掉一部分數字,希望保留下來的數字組成的正整數最大。輸入描述 輸入為兩行內容,第一行是正整數number,1 length number 50000。第二行是希望去掉的數字數量cnt 1 cnt length number 輸出描述 輸出保留...