수표 금액 검증

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

수표에는 금액이 두 번 적힌다. 한 번은 영어 단어로, 한 번은 숫자로 적는다. 둘이 다르면 그 수표는 무효다. 사람이 눈으로 맞춰 보는 일은 느려서, 어느 은행은 수표를 스캔해 문자 인식으로 영어 단어를 읽고 그 단어와 숫자를 비교하는 프로그램을 만들려고 한다.

단어로 적은 금액에는 다음 단어만 쓴다.

one, two, three, four, five, six, seven, eight, nine, ten, eleven, twelve, thirteen, fourteen, fifteen, sixteen, seventeen, eighteen, nineteen, twenty, thirty, forty, fifty, sixty, seventy, eighty, ninety, hundred, thousand, million, billion, trillion, rupees, paisas, and, only

여기 없는 단어가 하나라도 나오면 형식에 어긋난다.

단어의 배열은 다음 문법을 따른다.

  • small은 1 이상 99 이하의 수다. one부터 nineteen까지 중 단어 하나로 쓰거나, 십 단위 단어(twenty, thirty, forty, fifty, sixty, seventy, eighty, ninety) 하나로 쓰거나, 십 단위 단어 뒤에 one부터 nine까지 중 단어 하나를 붙여 쓴다.
  • group은 1 이상 999 이하의 수다. small 하나로 쓰거나, one부터 nine까지 중 단어 하나 뒤에 hundred를 붙이고 그 뒤에 small을 덧붙여 쓴다. 이때 뒤의 small은 생략할 수 있다.
  • 루피 금액은 group과 trillion, group과 billion, group과 million, group과 thousand, 그리고 배율 단어가 붙지 않는 마지막 group을 이 순서대로 이어 쓴다. 다섯 덩어리는 각각 생략할 수 있지만 적어도 하나는 남아야 한다. 따라서 같은 배율 단어가 두 번 나오거나 배율 단어의 순서가 뒤바뀌는 일은 없다.
  • 루피 금액 뒤에는 rupees가 온다.
  • 소수 부분이 0이 아니면 그 뒤에 and, small, paisas가 차례로 온다. 소수 부분이 0이면 이 셋을 모두 쓰지 않는다.
  • 문자열은 only로 끝나고, only 뒤에는 아무것도 오지 않는다.

1루피는 100파이사다. group은 항상 1 이상 999 이하이므로 값이 0인 덩어리는 아예 적지 않는다. hundred는 쓸 수 있으면 반드시 쓴다. 그래서 999는 nine hundred ninety nine이고 nine ninety nine이 아니다. thousand도 쓸 수 있으면 반드시 쓴다. 그래서 7535는 seven thousand five hundred thirty five이고 seventy five hundred thirty five가 아니다. 가장 큰 금액은 nine hundred ninety nine trillion nine hundred ninety nine billion nine hundred ninety nine million nine hundred ninety nine thousand nine hundred ninety nine rupees and ninety nine paisas only이고, 가장 작은 금액은 one rupees only다.

입력

첫 줄에 테스트 케이스의 수 NN이 주어진다 (1N1001 \le N \le 100). 다음 NN개 줄에는 숫자로 적은 금액, 공백 하나, 단어로 적은 금액이 차례로 주어진다. 숫자로 적은 금액은 소수점 아래가 정확히 두 자리이고 1.001.00 이상 999999999999999.99999999999999999.99 이하다. 단어로 적은 금액은 소문자 단어를 공백 하나로 이어 붙인 문자열이고 길이는 500자 이하다.

출력

각 테스트 케이스마다 Case #n: r 형식으로 한 줄씩 출력한다. n은 1부터 세는 테스트 케이스 번호다. 단어가 형식에 어긋나면 Bad를, 형식에 맞고 숫자와 같은 금액을 뜻하면 Match를, 형식에 맞지만 다른 금액을 뜻하면 No Match를 출력한다.