Problem:
Score : 200 points

Problem Statement

You have a digit sequence S of length 4. You are wondering which of the following formats S is in:

YYMM format: the last two digits of the year and the two-digit representation of the month (example: 01 for January), concatenated in this order

MMYY format: the two-digit representation of the month and the last two digits of the year, concatenated in this order

If S is valid in only YYMM format, print YYMM; if S is valid in only MMYY format, print MMYY; if S is valid in both formats, print AMBIGUOUS; if S is valid in neither format, print NA.

Constraints

S is a digit sequence of length 4.

Input

Input is given from Standard Input in the following format:

S

Output

Print the specified string: YYMM, MMYY, AMBIGUOUS or NA.

Sample Input 1

1905

Sample Output 1

YYMM

May XX19 is a valid date, but 19 is not valid as a month. Thus, this string is only valid in YYMM format.

Sample Input 2

0112

Sample Output 2

AMBIGUOUS

Both December XX01 and January XX12 are valid dates. Thus, this string is valid in both formats.

Sample Input 3

1700

Sample Output 3

NA

Neither 0 nor 17 is valid as a month. Thus, this string is valid in neither format.

Solution in C# (.NET Core 3.1.201) (judge verdict: Accepted)

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using static System.Console;

class Program
{
    static void Main(string[] args)
    {
        var S = ReadLine();

        var first = S[0..2];
        var second = S[2..4];

        bool IsYY(string s) => ('0' <= s[0] && s[0] <= '9') && ('0' <= s[1] && s[1] <= '9');
        bool IsMM(string s) => ('0' == s[0] && '1' <= s[1] && s[1] <= '9') || ('1' == s[0] && '0' <= s[1] && s[1] <= '2');

        var pattern = (IsMM(first) ? 1 : 0) + (IsMM(second) ? 2 : 0);
        var ans = pattern switch {
            0 => "NA",
            1 => "MMYY",
            2 => "YYMM",
            3 => "AMBIGUOUS"
        };

        WriteLine(ans);
    }
}