Problem:
Score: 100 points

Problem Statement

In AtCoder Kingdom, Gregorian calendar is used, and dates are written in the "year-month-day" order, or the "month-day" order without the year.

For example, May 3, 2018 is written as 2018-5-3, or 5-3 without the year.

In this country, a date is called Takahashi when the month and the day are equal as numbers. For example, 5-5 is Takahashi.

How many days from 2018-1-1 through 2018-a-b are Takahashi?

Constraints

a is an integer between 1 and 12 (inclusive).

b is an integer between 1 and 31 (inclusive).

2018-a-b is a valid date in Gregorian calendar.

Input

Input is given from Standard Input in the following format:

a b

Output

Print the number of days from 2018-1-1 through 2018-a-b that are Takahashi.

Sample Input 1

5 5

Sample Output 1

5

There are five days that are Takahashi: 1-1, 2-2, 3-3, 4-4 and 5-5.

Sample Input 2

2 1

Sample Output 2

1

There is only one day that is Takahashi: 1-1.

Sample Input 3

11 30

Sample Output 3

11

There are eleven days that are Takahashi: 1-1, 2-2, 3-3, 4-4, 5-5, 6-6, 7-7, 8-8, 9-9, 10-10 and 11-11.

Solution in C# (Mono 4.6.2.0) (judge verdict: Runtime Error)

using System;
using System.Collections.Generic;

namespace ABC
{
    class ABC096D
    {
        public static int N = 0;
        static void Main(string[] args)
        {
            N = int.Parse(Console.ReadLine());//長さ

            var ans = findAnswer();

            ans.Sort();
            for (int i = 0; i < ans.Count-1; ++i) {
                Console.Write("{0} ",ans[i]);
            }
            Console.WriteLine(ans[ans.Count - 1]);
        }

        static List<int> findAnswer()
        {
            //解説より
            //5で割って、1余る数の数列を作る
            var ans = new List<int>(N);
            for(int i = 11; i <= 55555; ++i)//いちばん最初に候補になる素数である11から開始
            {
                if(i % 5 == 1 && isPrime(i) == true)
                {

                    ans.Add(i);
                    if(ans.Count == N)
                    {
                        return ans;
                    }
                }
            }
            //ここには多分こない
            return null;
        }
        static bool isPrime(int x)
        {
            int max = (int)Math.Sqrt(x);
            for (int i = 2; i < max + 1; ++i)
            {
                if (x % i == 0)
                {
                    return false;
                }
            }
            return true;
        }
    }
}