洛谷——P1106 删数问题
生活随笔
收集整理的這篇文章主要介紹了
洛谷——P1106 删数问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
https://www.luogu.org/problem/show?pid=1106
題目描述
鍵盤輸入一個高精度的正整數N,去掉其中任意k個數字后剩下的數字按原左右次序將組成一個新的正整數。編程對給定的N和k,尋找一種方案使得剩下的數字組成的新數最小。
輸出應包括所去掉的數字的位置和組成的新的正整數。(N不超過250位) 輸入數據均不需判錯。
輸入輸出格式
輸入格式:
?
n (高精度的正整數)
k (需要刪除的數字個數)
?
輸出格式:
?
最后剩下的最小數。
?
輸入輸出樣例
輸入樣例#1:175438 4 輸出樣例#1:
13
?
1 #include <iostream> 2 #include <cstring> 3 4 using namespace std; 5 6 char n[251]; 7 int k,zero; 8 9 int main() 10 { 11 cin>>n>>k; 12 int len=strlen(n); 13 for(int i=1;i<=k;i++) 14 { 15 for(int j=0;j<len-1;j++) 16 if(n[j]>n[j+1]) 17 { 18 for(int h=j;h<len-1;h++) 19 n[h]=n[h+1]; 20 break; 21 } 22 len--; 23 } 24 while(n[zero]=='0') zero++; 25 for(int i=zero;i<len;i++) cout<<n[i]; 26 return 0; 27 }?
轉載于:https://www.cnblogs.com/Shy-key/p/6685486.html
總結
以上是生活随笔為你收集整理的洛谷——P1106 删数问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2_常用样式-border
- 下一篇: Ubuntu配置交叉编译环境