1. 程式人生 > >【例6.3】刪數問題(Noip1994)

【例6.3】刪數問題(Noip1994)

logs lan cin clas pac i++ wlan 描述 status

【例6.3】刪數問題(Noip1994)

鏈接:http://ybt.ssoier.cn:8088/status.php?start=0&showname=edsheeran&showpid=&showres=&showlang=


時間限制: 1000 ms 內存限制: 65536 KB

【題目描述】

輸入一個高精度的正整數n,去掉其中任意s個數字後剩下的數字按原左右次序組成一個新的正整數。編程對給定的n和s,尋找一種方案使得剩下的數字組成的新數最小。

輸出新的正整數。(n不超過240位)

輸入數據均不需判錯。

【輸入】

n

s

【輸出】

最後剩下的最小數。

【輸入樣例】

175438
4

【輸出樣例】

13
#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdio>
using namespace std;

int main()
{
    string n;
    int s;
    cin>>n;
    int l=n.length();
    cin>>s;
    for(int i=1;i<=s;i++)
    {
        for(int j=0
;j<l-1;j++) if(n[j]>n[j+1]) { for(int k=j;k<l;k++)n[k]=n[k+1]; break; } l--; } int i=0; while(i<l&&n[i]-0==0)i++; if(i==l)cout<<"0"<<endl; else for(;i<l;i++)cout<<n[i]; }

【例6.3】刪數問題(Noip1994)