Problem:
Score : 200 points

Problem Statement

There are some animals in a garden. Each of them is a crane with two legs or a turtle with four legs.

Takahashi says: "there are X animals in total in the garden, and they have Y legs in total." Determine whether there is a combination of numbers of cranes and turtles in which this statement is correct.

Constraints

1 \leq X \leq 100

1 \leq Y \leq 100

All values in input are integers.

Input

Input is given from Standard Input in the following format:

X Y

Output

If there is a combination of numbers of cranes and turtles in which the statement is correct, print Yes; otherwise, print No.

Sample Input 1

3 8

Sample Output 1

Yes

The statement "there are 3 animals in total in the garden, and they have 8 legs in total" is correct if there are two cranes and one turtle. Thus, there is a combination of numbers of cranes and turtles in which the statement is correct.

Sample Input 2

2 100

Sample Output 2

No

There is no combination of numbers of cranes and turtles in which this statement is correct.

Sample Input 3

1 2

Sample Output 3

Yes

We also consider the case in which there are only cranes or only turtles.

Solution in C++ (GCC 9.2.1) (judge verdict: Accepted)

#include<bits/stdc++.h>
using namespace std ;
typedef long long int ll;
#define pb push_back
#define mp make_pair
#define F  first
#define S  second

/*
bool compare (pair<ll,ll> x,pair<ll,ll> y)
    {   
        if(x.F==y.F)return x.S<y.S;
        return x.F<y.F;
    }
*/
int main()
{
    /*  if you are getting wrong on test case 2 then think of another proper logic 
        if you are getting wrong on test case 4 then think of edge cases 
        like n=0,n=n-1&& k=0&& k=k-1;
    */
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    ll t=1;
    //cin>>t;
    while(t>0)
    {
        t--;
        ll n,k,a,b,c,x,y,z;
        ll max=LONG_MIN;
        ll min=LONG_MAX;
        ll flag=0,sum=0;
        ll cnt=0,ans=0,gcd=1;
        cin>>x>>y;
        if((4*x-y)%2==0&&(y-2*x)%2==0&&((4*x-y)>=0)&&((y-2*x)>=0))
            cout<<"Yes\n";
        else cout<<"No\n";
    }
}