POJ 3617 Best Cow Line

一.题意

给你一系列字母, 要你取出字典序最小的字符串,每次只能从最上面或者最下面进行取

二.解法

字典序比较类的问题经常用得上贪心法

void Solve()
{
    int L=0,R=N-1;
    int num=0;
    while(L<=R)
    {
        bool left=false;
        for(int i=0;L+i<=R;++i)
        {
            if(Str[L+i]<Str[R-i])
            {
                left=true;
                break;
            }
            else if (Str[L+i]>Str[R-i])
            {
                left=false;
                break;
            }
        }
        if(left) putchar(Str[L++]);
        else putchar(Str[R--]);
        if(++num%80==0)
            puts("");
    }
}


你可能感兴趣的:(ACM)