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 Kotlin (1.0.0) (judge verdict: Accepted)

fun contains(numbers: IntArray, x: Int, y: Int): Boolean {
    var hasX = false
    var hasY = false

    for (number: Int in numbers) {
        hasX = (hasX || number == x)
        hasY = (hasY || number == y)
    }

    return (hasX && hasY)
}

fun containsInArray(numbersArray: Array<IntArray>, x: Int, y: Int): Boolean {
    var has = false

    for (numbers: IntArray in numbersArray) {
        if (contains(numbers, x, y)) {
            has = true
            break
        }
    }

    return has
}


fun main(args: Array<String>) {
    val (x, y) = readLine()!!.split(' ').map(String::toInt)
    val numbersArray: Array<IntArray> = arrayOf(intArrayOf(1, 3, 5, 7, 8, 10, 12), intArrayOf(4, 6, 9, 11), intArrayOf(2))

    val result = if (containsInArray(numbersArray, x, y)) "Yes" else "No"
    println(result)
}