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 Rust (1.15.1) (judge verdict: Accepted)

use std::io;

fn read_line()-> String {
    let mut s = String::new();
    let _ = io::stdin().read_line(&mut s).unwrap();
    s
}

fn group(s: i32) -> &'static str {
	let A = vec![1, 3, 5, 7, 8, 10, 12];
	let B = vec![4, 6, 9, 11];
	let C = vec![2,];

		if A.contains(&s) {
			"A"
		} else if B.contains(&s) {
			"B"
		} else if C.contains(&s) {
			"C"
		}else{
			"No"
		}
}

fn main() {
	let s = read_line().split_whitespace().map(|e|e.parse().unwrap())
	.collect::<Vec<i32>>();

	let x = group(s[0]);
	let y = group(s[1]);
	if x == y {
		println!("Yes");
	}else{
		println!("No");
	}
}