필 인 더 블랭크스 (빈칸 채우기)
시간 제한1초메모리 제한128 MB
최대 네 개의 빈칸이 있는 문장에 0부터 100까지의 수를 영어 단어로 채워 넣었을 때, 채운 단어까지 포함해 글자·모음·자음·특정 문자 개수를 세는 조건이 모두 참이 되는 해의 수를 구한다.
문제
필(Phil)은 문장의 빈칸을 영어 숫자 단어로 채워, 그 문장이 참인 진술이 되도록 만드는 퍼즐들을 풉니다. 프로그래머인 당신은 가능한 해를 모두 찾는 프로그램을 작성하려고 합니다. 퍼즐의 예는 다음과 같습니다.
There are ___ Os and ___ Ts in this sentence.
한 가지 해는 첫 번째 빈칸에 "two", 두 번째 빈칸에 "five"를 넣는 것입니다. 첫 번째 빈칸에 "one"을 넣을 수는 없는데, 단어 "one" 자체에 "O"가 하나 들어 있기 때문입니다. 이처럼 빈칸에 써 넣은 단어도 퍼즐(문장)의 일부가 되어 글자 수에 포함됩니다. 문법은 고려하지 않습니다.
입력
첫 번째 줄에는 데이터 집합의 개수를 나타내는 정수 ()가 주어집니다. 이어지는 개의 줄에는 풀어야 할 퍼즐이 한 줄씩 주어집니다.
각 퍼즐은 길이가 1자 이상 100자 이하이며, 다음 네 가지 형태의 참 진술을 1개 이상 4개 이하로 포함합니다.
___ Cs— 빈칸은 퍼즐 안에 등장하는 글자 의 개수입니다(대문자와 소문자를 모두 셉니다).___ letters— 빈칸은 퍼즐 안의 글자(letter) 개수입니다.___ vowels— 빈칸은 퍼즐 안의 모음 개수입니다. 이 문제에서 모음은 A, E, I, O, U만을 뜻합니다.___ consonants— 빈칸은 퍼즐 안의 자음 개수입니다.
각 빈칸은 밑줄 문자(_) 세 개가 연속된 ___이며, 단어 letters, vowels, consonants는 항상 소문자입니다. 퍼즐에 나타나는 밑줄 문자는 모두 빈칸의 일부입니다.
출력
각 데이터 집합에 대해, 가능한 올바른 해의 개수를 출력합니다. 퍼즐에 사용되는 모든 숫자 단어는 "zero"부터 "one hundred"까지입니다.