Problem:
Score : 300 points

Problem Statement

Find the price of a product before tax such that, when the consumption tax rate is 8 percent and 10 percent, the amount of consumption tax levied on it is A yen and B yen, respectively. (Yen is the currency of Japan.)

Here, the price before tax must be a positive integer, and the amount of consumption tax is rounded down to the nearest integer.

If multiple prices satisfy the condition, print the lowest such price; if no price satisfies the condition, print -1.

Constraints

1 \leq A \leq B \leq 100

A and B are integers.

Input

Input is given from Standard Input in the following format:

A B

Output

If there is a price that satisfies the condition, print an integer representing the lowest such price; otherwise, print -1.

Sample Input 1

2 2

Sample Output 1

25

If the price of a product before tax is 25 yen, the amount of consumption tax levied on it is:

When the consumption tax rate is 8 percent: \lfloor 25 \times 0.08 \rfloor = \lfloor 2 \rfloor = 2 yen.

When the consumption tax rate is 10 percent: \lfloor 25 \times 0.1 \rfloor = \lfloor 2.5 \rfloor = 2 yen.

Thus, the price of 25 yen satisfies the condition. There are other possible prices, such as 26 yen, but print the minimum such price, 25.

Sample Input 2

8 10

Sample Output 2

100

If the price of a product before tax is 100 yen, the amount of consumption tax levied on it is:

When the consumption tax rate is 8 percent: \lfloor 100 \times 0.08 \rfloor = 8 yen.

When the consumption tax rate is 10 percent: \lfloor 100 \times 0.1 \rfloor = 10 yen.

Sample Input 3

19 99

Sample Output 3

-1

There is no price before tax satisfying this condition, so print -1.

Solution in Go (1.6) (judge verdict: Accepted)

package main
import (
   "fmt"
   "os"
   "bufio"
   "strconv"
)
var sc = bufio.NewScanner(os.Stdin)

func main() {
  sc.Split(bufio.ScanWords)
  a := nextInt()
  b := nextInt()

  result := 0
  for i:= 0; i <= 1009; i++ {
	  r008 := float64(i) * 0.08
	  r01 := float64(i) * 0.1
	  if int(r008) == a && int(r01) == b {
		  result = i
		  break
	  }
  }

  if result == 0 {
	  fmt.Println("-1")
  } else {
	  fmt.Println(result)
  }

/*
  nafrom := a / 0.08
  nato := (a + 1) / 0.08

  nbfrom := b / 0.1 //20
  nbto := (b + 1) / 0.1 //30
  if (nbfrom > nato && nbto > nato ) || (nafrom > nbto && nato > nbto ) {
	  fmt.Println("-1")
  }

  if (nbto >= nato && nbfrom < nafrom ) {
	  fmt.Println(int(nafrom))
  }

  if (nato >= nbto && nafrom < nbfrom ) {
	  fmt.Println(int(nbfrom))
  }

  if nafrom <= nbto && nbto < nato{
	  fmt.Println(int(nafrom))
  }

  if nbfrom <= nato && nato < nbto{
	  fmt.Println(int(nbfrom))
  }
*/

}

func nextString() (string) {
	sc.Scan()
	v := sc.Text()
	return v
}

func nextInt() (int) {
	sc.Scan()
	v, e := strconv.Atoi(sc.Text())
    if e != nil { panic(e) }
    return v
}

func nextFloat() (float64) {
	sc.Scan()
	v, e := strconv.ParseFloat(sc.Text(), 64)
    if e != nil { panic(e) }
    return v
}