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 OCaml (4.02.3) (judge verdict: Accepted)

let group1 = [1;3;5;7;8;10;12]
let group2 = [4;6;9;11]
let group3 = [2]

let _ = Scanf.sscanf (read_line()) "%d %d" (fun x y ->
  if x = y then "Yes" else 
  if List.exists (fun a -> a = x) group1 && List.exists (fun a -> a = y) group1 then "Yes" else 
  if List.exists (fun a -> a = x) group2 && List.exists (fun a -> a = y) group2 then "Yes" else
  if List.exists (fun a -> a = x) group3 && List.exists (fun a -> a = y) group3 then "Yes" else "No"
) |> print_endline