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++14 (Clang 3.8.0) (judge verdict: Accepted)

#include <stdio.h>

char str[5];
char MM[12][3] = {"01", "02", "03", "04", "05", "06",
                  "07", "08", "09", "10", "11", "12"};

int main(void)
{
  scanf("%s", str);
  bool MMYY = false;
  bool YYMM = false;
  // MMYY
  for (int i = 0; i < 12; ++i) {
    if (str[0] == MM[i][0] && str[1] == MM[i][1]) MMYY = true;
  }
  // YYMM
  for (int i = 0; i < 12; ++i) {
    if (str[2] == MM[i][0] && str[3] == MM[i][1]) YYMM = true;
  }
  if (MMYY && YYMM)
    printf("AMBIGUOUS\n");
  else if (MMYY && !YYMM)
    printf("MMYY\n");
  else if (!MMYY && YYMM)
    printf("YYMM\n");
  else
    printf("NA\n");
  return 0;
}