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

#include <stdio.h>

int main(void){

    int input;
    int a1, a2, a3, a4;
    int flag1 = -1, flag2 = -1;
    scanf("%d", &input);

    a4 = (input % 10);
    input -= a4;
    a3 = (input % 100);
    input -= a3;
    a2 = (input % 1000);
    input -= a2;
    a2 /= 100;
    input /= 1000;
    a1 = input;
    printf("a1 = %d\na2 = %d\na3 = %d\na4 = %d\n", a1, a2, a3, a4);

    a1 = (a1 * 10 + a2);
    a3 = a3 + a4;

    if(1 <= a1 && a1 <= 12) flag1 = 1;
    if(1 <= a3 && a3 <= 12) flag2 = 1;

    if((a1==0||a2==0) || (flag1==-1 && flag2==-1)) {printf("NA");}
    else if(flag1==-1 && flag2==1) {printf("YYMM");}
    else if(flag1==1 && flag2==-1) {printf("MMYY");}
    else {printf("AMBIGUOUS");}

    return 0;
}