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 C# (Mono 4.6.2.0) (judge verdict: Wrong Answer)

using System.Collections.Generic;
using System.Linq;

public class Hello
{
    public static void Main()
    {
        hoge();
        //System.Console.ReadLine();
    }

    public static void hoge()
    {
        var vars = System.Console.ReadLine().Split(' ').Select(x => int.Parse(x)).ToArray();
        int a = vars[0];
        int b = vars[1];

        int mina = (int)((double)a / 0.08);
        int minb = (int)((double)b / 0.1);

        int minaa = mina;
        int minbb = minb;

        List<int> al = new List<int>();
        while (true)
        {
            al.Add(mina);
            mina++;
            if ((int)(mina * 0.08) > a)
            {
                break;
            }
        }
        List<int> bl = new List<int>();
        while (true)
        {
            bl.Add(minb);
            minb++;
            if ((int)(minb * 0.1) > b)
            {
                break;
            }
        }
        mina = minaa;
        minb = minbb;
        while (true)
        {
            mina--;
            if ((int)(mina * 0.08) < a)
            {
                break;
            }
        }
        while (true)
        {
            minb--;
            if ((int)(minb * 0.1) < b)
            {
                break;
            }
        }
        al.Sort();
        bl.Sort();
        List<int> target = al;
        List<int> search = bl;

        if (minbb < minaa)
        {
            target = bl;
            search = al;
        }

        for (int i = 0; i < target.Count; i++)
        {
            if (search.Contains(target[i]))
            {
                System.Console.WriteLine(target[i]);
                return;
            }
        }

        System.Console.WriteLine(-1);
    }

}