删数问题

来源:互联网 发布:站长工具源码 编辑:程序博客网 时间:2024/06/10 03:01

Problem Description

 键盘输入一个高精度的正整数n(≤100位),去掉其中任意s个数字后剩下的数字按照原来的左右次序组成一个新的正整数。编程对给定的n与s,寻找一种方案,使得剩下的数字组成的新数最小。

Input

  输入有多组 每组包括原始数n,要去掉的数字数s;

Output

 输出去掉s个数后最小的数

Example Input

178543  4

Example Output

13
#include<stdio.h>#include<string.h>int main(){    int s;    char a[101];    while(~scanf("%s %d", a, &s))    {        int i, n;        while(s>0)        {            n = strlen(a);            i = 0;            while(i<n&&a[i]<=a[i+1])//注意是小于等于            {                i++;            }            while(i<n)            {                a[i] = a[i+1];                i++;            }            s--;        }        n = strlen(a);        while(n>1&&a[0]=='0')//对于零的处理        {            i = 0;            while(i<n)            {                a[i] = a[i+1];                i++;            }            n--;        }        printf("%s\n", a);    }}
0 0
原创粉丝点击