好串

好串

https://ac.nowcoder.com/acm/problem/21874

#include<iostream>
#include<string>

using namespace std;

int main()
{
    string s;
    cin>>s;
    int len=s.length();
    int sum=0;
    if(s[0]=='b')
    {
        cout<<"Bad"<<endl;
        return 0;
    }
    else
        sum++;
    int i;
    for(i=1;i<len;i++)
    {
        if(s[i]=='a')
            sum++;
        else
            sum--;
        if(sum<0)
            break;
    }
    if(i==len&&sum==0)
        cout<<"Good"<<endl;
    else
        cout<<"Bad"<<endl;
    return 0;
}

/*
用栈来解决
扫描字符串,如果遇到a,入栈
如果遇到b,将栈顶的a出栈(注意判空,如果空,输出Bad)
扫描完字符串,如果栈空,则Good,反之。
*/

全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务