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 (GCC 5.4.1) (judge verdict: Accepted)

#include <bits/stdc++.h>
using namespace std;
#define REP(i, n) for(int i = 0; i < n; i++)
#define REPR(i, n) for(int i = n; i >= 0; i--)
#define FOR(i, m, n) for(int i = m; i < n; i++)
typedef long long ll;

bool isMM(int num) {
  return num >= 1 && num <= 12 ? true : false;
}

int main() {
  string s;
  cin >> s;
  int s1 = atoi(s.substr(0, 2).c_str());
  int s2 = atoi(s.substr(2, 2).c_str());
  bool isMMS1 = isMM(s1);
  bool isMMS2 = isMM(s2);
  if (!isMMS1 && isMMS2) {
    cout << "YYMM" << "\n";
  } else if (isMMS1 && !isMMS2) {
    cout << "MMYY" << "\n";
  } else if (isMMS1 && isMMS2) {
    cout << "AMBIGUOUS" << "\n";
  } else {
    cout << "NA" << "\n";
  }
}