B. Game with string(cf)STL:stack

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Two people are playing a game with a string ss, consisting of lowercase latin letters.

On a player's turn, he should choose two consecutive equal letters in the string and delete them.

For example, if the string is equal to "xaax" than there is only one possible turn: delete "aa", so the string will become "xx". A player not able to make a turn loses.

Your task is to determine which player will win if both play optimally.

Input

The only line contains the string ss, consisting of lowercase latin letters (1≤|s|≤1000001≤|s|≤100000), where |s||s| means the length of a string ss.

Output

If the first player wins, print "Yes". If the second player wins, print "No".

Examples

input

abacaba

output

No

input

iiq

output

Copy

Yes

input

abba

output

No

Note

In the first example the first player is unable to make a turn, so he loses.

In the second example first player turns the string into "q", then second player is unable to move, so he loses.

#include <bits/stdc++.h>
using namespace std;
#define ll long long int
int main()
{
    string str;
    stack<char>s;
    cin>>str;
    int num=0;
    for(int i=0;i<str.length();i++)
    {
        if(!s.empty()&&str[i]==s.top())//一定要先判空
        {
            num++;
            s.pop();
        }
        else
            s.push(str[i]);
    }
        if(num&1)
        cout<<"Yes"<<endl;
        else
        cout<<"No"<<endl;
    return 0;
}

 

全部评论

相关推荐

04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务