Problem:
Score : 100 points

Problem Statement

Based on some criterion, Snuke divided the integers from 1 through 12 into three groups as shown in the figure below.
Given two integers x and y (1 ≤ x < y ≤ 12), determine whether they belong to the same group.

Constraints

x and y are integers.

1 ≤ x < y ≤ 12

Input

Input is given from Standard Input in the following format:

x y

Output

If x and y belong to the same group, print Yes; otherwise, print No.

Sample Input 1

1 3

Sample Output 1

Yes

Sample Input 2

2 4

Sample Output 2

No

Solution in C++14 (GCC 5.4.1) (judge verdict: Wrong Answer)

#include <cstdio>
#include <stdio.h>
#include <string>
#include <string.h>
#include <algorithm>
#include <vector>
#include <iostream>
using namespace std;

#define FOR(i,a,b) for (int i=(a);i<(b);i++)
#define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--)
#define REP(i,n) for (int i=0;i<(n);i++)
#define RREP(i,n) for (int i=(n)-1;i>=0;i--)

int g(int po){
	if(po == 4||po == 6 || po == 9 || po == 11 ){
		return 2;
	}
	else if(po == 2){
		return 1;
	}
	else {
		return 0;
	}
}


int main(){
	int H,W;
	cin >> H>>W;



	string a[100];

	REP(j,H){
			cin >> a[j];
	}

	REP(i,W+2){
		cout << "#";
	}
	cout << endl;

	REP(j,H){
		cout << "#";
		cout << a[j];

		cout << "#" <<endl;
	}

	REP(i,W+2){
		cout << "#";
	}
	cout << endl;
	
}