Problem:
Score : 100 points

Problem Statement

Iroha loves Haiku. Haiku is a short form of Japanese poetry. A Haiku consists of three phrases with 5, 7 and 5 syllables, in this order.

To create a Haiku, Iroha has come up with three different phrases. These phrases have A, B and C syllables, respectively. Determine whether she can construct a Haiku by using each of the phrases once, in some order.

Constraints

1≦A,B,C≦10

Input

The input is given from Standard Input in the following format:

A B C

Output

If it is possible to construct a Haiku by using each of the phrases once, print YES (case-sensitive). Otherwise, print NO.

Sample Input 1

5 5 7

Sample Output 1

YES

Using three phrases of length 5, 5 and 7, it is possible to construct a Haiku.

Sample Input 2

7 7 5

Sample Output 2

NO

Solution in Scala (2.11.7) (judge verdict: Accepted)

object Main extends App {
    val list = readLine.split(" ").map{_.toInt}.toList
    def loop(restList: List[Int], acc: List[Int]): Unit = {
      restList match {
        case Nil => println("YES")
        case head :: tail if head == 7 => {
          if(acc.contains(7)) println("NO") else loop(tail, acc :+ head)
        }
        case head :: tail if head == 5 => {
          if(acc.count(x => x == 5) < 2 ) loop(tail, acc :+ head) else println("NO")
        }
        case _ => println("NO")
      }
    }
    loop(list, List.empty)
}