stablegradients/pie-gem5-bysrc huggingface dataset:
// Original C++ solution (slower):
#include <iostream>

#include <vector>

#include <queue>

#include <string>

#include <set>

#include <math.h>

#include<algorithm>

using namespace std;







int main()

{

 int n;

 cin>>n;

 int a=0,b=0,c=0;

 for(int i=0;i<n;i++)

 {

     int tmp;

     cin>>tmp;

     if(tmp%4==0) a++;

     else if(tmp%2==0) b++;

     else c++;





 }

 if(n==2)

    {

        if(a==1||a==2)

        {cout<<"Yes"<<endl;return 0;}

        if(b==2)        {cout<<"Yes"<<endl;return 0;}

       cout<<"No"<<endl;return 0;



    }





 if(c==0)  cout<<"Yes"<<endl;

else{

    if(a<c-1) {cout<<"No"<<endl;}

    else {

        if(a>=c) cout<<"Yes"<<endl;

        else 

            {

                if(b==0) cout<<"Yes"<<endl;

                else cout<<"No"<<endl;

            }

    }



}



  return 0;

}

// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
#include "iostream"

#include "map"

#include "vector"



using namespace std;

int main()

{

	int n;

	int a1=0,a2=0,a4=0;

	cin>>n;

	for(int i=0;i<n;i++)

	{

		int num;

		cin>>num;

		if(num%4==0)

			a4++;

		else if(num%2==0)

			a2++;

		else

			a1++;

	}

	if((a4+1==a1&&a2==0)||(a4>=a1))

		cout<<"Yes"<<endl;

	else

		cout<<"No"<<endl;	

	system("pause");

}


// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
#include <iostream>

#include <string>

using namespace std;



int main ()

{

	int n, a = 0, b = 0, c = 0, d = 0;

	cin >> n;

	int num[n];

	for (int i = 0; i < n; ++ i)

	{

		cin >> d;

		num[i] = d % 4;

	}

	for (int i = 0; i < n; ++ i)

	{

		switch(num[i])

		{

			case 0: ++ a; break;

			case 1: ++ b; break;

			case 2: ++ c; break;

			case 3: ++ b; break;

		}

	}

	if (b == 0) cout << "Yes" << endl;

	else 

	{

		if (a == 0) cout << "No" << endl;

		else 

		{

			if (c == 0 && a >= b - 1) cout << "Yes" << endl;

			else if (c != 0 && a >= b) cout << "Yes" << endl;

			else cout << "No" << endl;

		}

	} 

	return 0;

} 

// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
#include <iostream>

#include <cstdio>



using namespace std;



int main(){

    int n;

    scanf("%d",&n);

    int a = 0;

    int b = 0;

    for (int i = 0;i < n;i++){

        int k;

        scanf("%d",&k);

        if (k%4==0){

            a++;

        }

        else if (k%2 == 0){

            b++;

        }

    }

    if (n > 1+a*2+b){

        printf("No\n");

    }

    else if (n == 1+a*2+b&&b!=0){

        printf("No\n");

    }

    else {

        printf("Yes\n");

    }

    return 0;

}


// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
/*zxj*/

#include<iostream> 

#include<string>

#include<cstring>

#include<algorithm>

#include<cstdio>

#include<cmath>

#include<set>

#include<map>

#include<vector>

#include<queue>

#include<sstream>

#define sf scanf

#define pf printf

#define pfn printf("\n");

#define pfk printf(" ");

#define pf0 printf("0");

#define pf1 printf("1");

#define ll long long

#define sfd(n) scanf("%d",&n);

#define sfdd(n,m) scanf("%d%d",&n,&m);

#define sfld(n) scanf("%lld",&n);

#define sfldd(n,m) scanf("%lld%lld",&n,&m);

#define sflf(n) scanf("%lf",&n);

#define sflff(n,m) scanf("%lf%lf",&n,&m);

#define sfc(n) scanf("%c",n);

#define sfcc(n,m) scanf("%c%c",n,m);

#define sfs(n) scanf("%s",n);

#define sfss(n,m) scanf("%s%s",n,m);

#define pfd(n) printf("%d",n);

#define pfld(n) printf("%lld",n);

#define pflf(n) printf("%lf",n);

#define pfc(n) printf("%c",n);

#define pfs(n) printf("%s",n);

using namespace std;

#define csh(a,n) memset(a,n,sizeof(a));

int main(){

	int n;

	cin>>n;

	int a=0,b=0,c=0;

	for(int i=0;i<n;i++){

		int d;

		cin>>d;

		if(d%2==0){

			if(d%4==0){

				c++;

			}

			else{

				b++;

			}

		}

		else{

			a++;

		}

	}

	if(b!=0){

		a++;

	}

	if(a-1<=c){

		cout<<"Yes"<<endl;

	}

	else{

		cout<<"No"<<endl;

	}

}

// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
#include<iostream>

#include<cstdio>

#include<cmath>

using namespace std;

int main() {

	int n;

	long long int a[105000];

	scanf("%d",&n);

	int cnt=0,cnt1=0,cnt2=0;

	for(int i=0; i<n; i++) {

		scanf("%lld",&a[i]);

		if(a[i]%4==0){

			cnt++;

		}else if(a[i]%4==2){

			cnt2++;

		}else{

			cnt1++;

		}

	}

	if(cnt>=cnt1){

		printf("Yes");

	}else{

		if(cnt==cnt1-1&&cnt2==0){

			printf("Yes");

		}else{

			printf("No");

		}

	}

	return 0;

}

// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
#include <cstdio>

#include <cstring>

#include <algorithm>

#include <vector>

#include <math.h>

#include <string.h>

#include <algorithm>

#include <iostream>

#include <string>

#include <sstream>

#include <iostream>

#include <time.h>

#include <queue>

#include <list>

#include <map>

#include <set>

#include <vector>

#include <stack>

#include <string.h>

#define sf scanf

#define pf printf

#define lf double

#define ll long long

#define p123 printf("123\n");

#define pn printf("\n");

#define pk printf(" ");

#define p(n) printf("%d",n);

#define pln(n) printf("%d\n",n);

#define s(n) scanf("%d",&n);

#define ss(n) scanf("%s",n);

#define ps(n) printf("%s",n);

#define sld(n) scanf("%lld",&n);

#define pld(n) printf("%lld",n);

#define slf(n) scanf("%lf",&n);

#define plf(n) printf("%lf",n);

#define sc(n) scanf("%c",&n);

#define pc(n) printf("%c",n);

#define gc getchar();

#define re(n,a) memset(n,a,sizeof(n));

#define len(a) strlen(a)

using namespace std;

//https://codeforces.com/contest/1228/problems

//https://codeforces.com/contest/1228/submit

int main() {

    int n;

    s(n)

    int count0 = 0;

    int count1 = 0;

    int x;



    for(int i = 0; i < n; i ++) {

        s(x)

        if(x % 4 == 0) {

            count0 ++;

        }else if(x % 2 == 0){

            count1 ++;

        }

    }

    if(n <= count0*2+1){

        puts("Yes");

    }else{

        n-= count0*2;

        if(n <= count1){

            puts("Yes");

        }else{

            puts("No");

        }

        

        

        

    }

    

    

    return 0;

}


// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
#include<bits/stdc++.h>

using namespace std;

int b,c,d;

int main()

{

	int n;

	cin>>n;

	for (int i=0;i<n;i++)

	{

		int a;

		cin>>a;

		if (a%4==0)

			b++;

		else

			if (a%2==0)

				c++;

			else

				d++;

	}

	if (d>b+1||(d==b+1&&c!=0)) cout<<"No";

	else cout<<"Yes";

	return 0;

}

// Optimized solution to the same problem (faster):
#include<cstdio>

#include<cstring>

//long long

const int len = 1e5 + 5;

int a[len],cnt[5],N;



int main(void)

{

	scanf("%d", &N);

	for (int i = 0; i < N; ++i)

	{

		scanf("%d", &a[i]);

		if (a[i] % 4 == 0)

			++cnt[4];

		else if (!(a[i] & 01))

			++cnt[2];

		else

			++ cnt[1];

	}

	if (cnt[2] == 0 && cnt[4] >= cnt[1] - 1)

		printf("Yes");

	else if (cnt[4] >= cnt[1])

		printf("Yes");

	else

		printf("No");

	return 0;

}

// Fastest known solution for this problem:
// Original C++ solution (slower):
#include<iostream>

int n,a,x,y;

main(){

  std::cin>>n;

  for(int i=0;i<n;++i){

    std::cin>>a;

    if(a%4==0)x++;

    else if(a%2==0)y++;

  }

  std::cout<<(x+y/2+1>n/2?"Yes\n":"No\n");

}


// Optimized solution to the same problem (faster):
#include<cstdio>

int n,a,x,y,i;

main(){

  for(scanf("%d",&n);i++<n;a%4?a%2?0:y++:x++)scanf("%d",&a);

  printf(x+y/2+1>n/2?"Yes\n":"No\n");

}


// Fastest known solution for this problem:
// Original C++ solution (slower):
#include<iostream>

using namespace std;

int main()

{

	int n;

	cin>>n;

	int a[n];

	int t1=0,t2=0,t4=0;

	for(int i=0;i<n;i++)

	{

		int b;

		cin>>b;

		if(b%4==0)

		{

			a[i]=4;

			t4++;

		}

		else if(b%2==0)

		{

			a[i]=2;

			t2++;

		}

		else

		{

			a[i]=1;

			t1++;

		}

	}

	if(t4>=t1||(t2==0&&t4+1>=t1))

	{

		cout<<"Yes";

	}

	else

	{

		cout<<"No";

	}

	return 0;

}

// Optimized solution to the same problem (faster):
/*#include<cstdio>      最后一个测试点过不了，不知道为什么

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){

        if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }



        if(countunluck-1  > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}

*/



#include<cstdio>      

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){           //将2放在末尾，所以说需要unlucky的数量小于luck的数量

            

        /*if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }*/



        if(countunluck > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}




















































// Fastest known solution for this problem:
// Original C++ solution (slower):
//soale C

#include <bits/stdc++.h>

using namespace std;

const int N = 1e5 + 20;

typedef long long ll;

ll n, a[N], c[10], d = 0;

int main(){

	cin >> n;

	for(int i = 0; i < n; i ++){

		cin >> a[i];

		if(a[i] % 4 == 0){

			a[i] = 2;

			c[0] += 1;

		}

		else if(a[i] % 4 == 2){

			a[i] = 1;

			c[1] += 1;

		}

		else{

			a[i] = 0;

			c[2] += 1;

		}

	}

	if(c[1] != 0){

		if(c[2] > c[0]){

			d = 1;

		}

	}

	else{

		if(c[2] > c[0] + 1){

			d = 1;

		}

	}

	if(d == 1){

		cout << "No";

	}

	else{

		cout << "Yes";

	}

	return 0;

}

// Optimized solution to the same problem (faster):
/*#include<cstdio>      最后一个测试点过不了，不知道为什么

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){

        if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }



        if(countunluck-1  > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}

*/



#include<cstdio>      

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){           //将2放在末尾，所以说需要unlucky的数量小于luck的数量

            

        /*if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }*/



        if(countunluck > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}




















































// Fastest known solution for this problem:
// Original C++ solution (slower):
#include <bits/stdc++.h>



using namespace std;

typedef pair <int, int> pii;



const int maxn = 100001;



int n,a,q,w,e,s;



void input();

void solve();



int main(){

	input();

	solve();

	

	return 0;

}

void input(){

	cin>>n;

	for (int i=0;i<n;i++){

		cin>>a;

		if (a%4==0){

			q++;

		}

		else{

			if (a%2==0){

				w++;

			}

			else{

				e++;

			}

		}

		s++;

	}

	

}

void solve(){

	if (w>0){

		e++;

	}

	while(q>=2 and e>=2){

		q-=2;

		e-=2;

	}

	e--;

	if (e>q){

		cout<<"No";

	}

	else{

		cout<<"Yes";

	}

}

// Optimized solution to the same problem (faster):
/*#include<cstdio>      最后一个测试点过不了，不知道为什么

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){

        if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }



        if(countunluck-1  > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}

*/



#include<cstdio>      

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){           //将2放在末尾，所以说需要unlucky的数量小于luck的数量

            

        /*if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }*/



        if(countunluck > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}




















































// Fastest known solution for this problem:
// Original C++ solution (slower):
#define debug 0

#define test 0

#define CPLUS 1

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#include <math.h>

#include <string.h>

#if CPLUS

#include <iostream>

#include <stack>

#include <string>

#include<algorithm>

using namespace std;

#endif



int a[100005];





int check(int n1, int n2, int n4)

{

	if (n4 >= n1)

		return 1;

	else if (n1 == n4 + 1 && n2 == 0)

		return 1;

	else

		return 0;

}



int main(void)

{

#if debug

	freopen("in.txt", "r", stdin);

#endif

	int i, n;

	cin >> n;

	int n1=0, n2 = 0, n4 = 0;

	for (i = 0; i < n; i++) {

		cin >> a[i];

		if (a[i] % 4 == 0)

			n4++;

		else if (a[i] % 2 == 0)

			n2++;

		else

			n1++;

	}

#if test

	printf("%d %d %d", n1, n2, n4);

#endif

	if (check(n1, n2, n4))

		printf("Yes\n");

	else

		printf("No\n");

	return 0;

}

// Optimized solution to the same problem (faster):
/*#include<cstdio>      最后一个测试点过不了，不知道为什么

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){

        if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }



        if(countunluck-1  > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}

*/



#include<cstdio>      

const int maxn = 100010;

int luck[maxn] = {0};

int main(){

    int n;

    int countluck = 0;

    int countunluck = 0;

    int counttwo = 0;

    scanf("%d",&n);

    for(int i = 0;i < n;i++){

        scanf("%d",&luck[i]);

        if(luck[i] % 4 == 0){

            countluck++;

        }else if(luck[i] % 2 == 0){

            counttwo++;

        }else{

            countunluck++;

        }

    }

    if(counttwo == 0){

        if(countunluck - 1 > countluck){

            printf("No\n");

        }else{

            printf("Yes\n");



        }

    }

    else if (counttwo > 0){           //将2放在末尾，所以说需要unlucky的数量小于luck的数量

            

        /*if(counttwo == 1){

            countunluck++;

        }else{

            countluck +=(counttwo/2);

        }*/



        if(countunluck > countluck){

            printf("No\n");



        }else{

            printf("Yes\n");



        }

    }





    return 0;

}




















































// Fastest known solution for this problem: