傳送門
這道題問給出乙個數字(n位),問刪去任意k位使其剩下位數組成的數字最小一開始我是覺得刪掉前k大的位數,顯然是不對的。例如,1649,我們刪掉9,那麼結果就為164,如果我們刪掉6就是149,顯然後面的更小的。
看了題解才會做,我們要一直找s[i]>s[i+1]的數並刪掉,並且肯定能找到,中間找不到,就刪除最後乙個。
#include
using
namespace std;
const
int maxn=
255;
char s[maxn]
;int k;
intmain()
break;}
} len--;}
int j=0;
while
(j<=len-
1&&s[j]
=='0'
)j++;if
(j==len)cout<<0;
else
cout<}
P1106 刪數問題
題目描述 鍵盤輸入乙個高精度的正整數n 不超過250位 去掉其中任意k個數字後剩下的數字按原左右次序將組成乙個新的正整數。程式設計對給定的n和k,尋找一種方案使得剩下的數字組成的新數最小。輸入格式 n 高精度的正整數 k 需要刪除的數字個數 輸出格式 最後剩下的最小數。輸入輸出樣例 輸入175438...
P1106 刪數問題
題目描述 鍵盤輸入乙個高精度的正整數 n 不超過 250 位 去掉其中任意 k 個數字後剩下的數字按原左右次序將組成乙個新的非負整數。程式設計對給定的 n和 k,尋找一種方案使得剩下的數字組成的新數最小。輸入格式 n 高精度的正整數 k 需要刪除的數字個數 輸出格式 最後剩下的最小數。輸入輸出樣例 ...
P1106 刪數問題
題目描述 鍵盤輸入乙個高精度的正整數 nn 不超過 250250 位 去掉其中任意 kk 個數字後剩下的數字按原左右次序將組成乙個新的非負整數。程式設計對給定的 nn 和 kk,尋找一種方案使得剩下的數字組成的新數最小。輸入格式 nn 高精度的正整數 kk 需要刪除的數字個數 輸出格式 最後剩下的最...