您的位置:首页 > 其它

贪心算法之寻找最大数

2017-12-02 13:47 176 查看

 
                                      从左到右,每次删除第一个比前一个数小的数,如果没有找到,就删除最后一位数。

#include <stdio.h>

#include <string.h>

int main()

{

    int i,n;

    scanf("%d",&n);

    while(n--)

    {

        char a[100];        //对于特别大的数,就用字符串来表示

        int m;

        scanf("%s %d",a,&m);

        int len=strlen(a);

        while(m--)

        {

            for(i=0; i<len-1; i++)

                if(a[i]<a[i+1])

                    break;

            if(i<len-1)

                memmove(&a[i],&a[i+1],len-i);

            len--;

        }

        for(i=0; i<len; i++)

            printf("%c",a[i]);

        printf("\n");

    }

    return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: