Problem Statement
Consider a 7-digit combination as a potential local telephone number. We would like to classify all 7-digit combinations as one of the following types: OPERATOR, LONG DISTANCE, EMERGENCY, MOVIE, VANITY or REGULAR.
-
OPERATOR - all numbers that start with 0 (you can't use such a combination
for a phone number, as you would get an operator after dialing the first 0).
- LONG DISTANCE - all numbers that start with 1 (you can't use such a
combination for a local phone number, as the system would expect this to be a
LONG DISTANCE call, and would wait for 4 more digits).
- EMERGENCY - all numbers that start with N11, where N is a digit between 2 and
9, inclusive (we often use 911 and 411, but others are also reserved for special
use).
- MOVIE - all numbers that start with 555 (those numbers are fake numbers that
are used as pretend phone numbers in the movies or on TV).
- VANITY - these are numbers not included in the above categories that many
businesses dream to have as they are easy to remember. More precisely, these
are the numbers where the last 4 digits are easy to remember. There are the following
types of vanity numbers:
1) one digit repeated four times, as in 4444;
2) numbers with only 2 distinct digits such as 2223, or 4545;
3) digits in strictly increasing order (each digit is 1 plus the previous digit) as in 2345;
4) digits in strictly decreasing order (each digit is the previous digit minus 1) as in 3210 - REGULAR - all other numbers
Your task is, given a
Definition
- Class:
- TelNum
- Method:
- type
- Parameters:
- String
- Returns:
- String
- Method signature:
- String type(String telNum)
- (be sure your method is public)
Constraints
- telNum contains exactly 8 characters
- The fourth character of telNum is a dash '-', all other characters are digits ('0'-'9').
Examples
"222-2222"
Returns: "VANITY"
"123-4567"
Returns: "LONG DISTANCE"
"258-2583"
Returns: "REGULAR"
"432-1098"
Returns: "REGULAR"
"011-0000"
Returns: "OPERATOR"
"111-1111"
Returns: "LONG DISTANCE"
"411-1111"
Returns: "EMERGENCY"
"555-5555"
Returns: "MOVIE"
"213-0123"
Returns: "VANITY"
"213-5775"
Returns: "VANITY"
"354-2220"
Returns: "VANITY"
"436-1011"
Returns: "VANITY"
"654-1313"
Returns: "VANITY"
"765-6789"
Returns: "VANITY"
"987-9876"
Returns: "VANITY"
"876-0987"
Returns: "REGULAR"
"476-4567"
Returns: "VANITY"
"554-4321"
Returns: "VANITY"
"544-1233"
Returns: "REGULAR"
"554-1123"
Returns: "REGULAR"
"565-4578"
Returns: "REGULAR"
"000-0000"
Returns: "OPERATOR"
"555-0000"
Returns: "MOVIE"
"911-9876"
Returns: "EMERGENCY"
"252-2368"
Returns: "REGULAR"
"446-3234"
Returns: "REGULAR"
"345-2323"
Returns: "VANITY"
"342-4456"
Returns: "REGULAR"
"522-2345"
Returns: "VANITY"
"223-7654"
Returns: "VANITY"
"434-3574"
Returns: "REGULAR"
"213-1123"
Returns: "REGULAR"
"512-4567"
Returns: "VANITY"
"912-2232"
Returns: "VANITY"
"912-3400"
Returns: "REGULAR"
"404-3210"
Returns: "VANITY"
"512-1225"
Returns: "REGULAR"
"457-1234"
Returns: "VANITY"
"245-2223"
Returns: "VANITY"
"578-0123"
Returns: "VANITY"
"012-3456"
Returns: "OPERATOR"
"711-1111"
Returns: "EMERGENCY"
"654-1234"
Returns: "VANITY"
"413-2587"
Returns: "REGULAR"
"222-1357"
Returns: "REGULAR"
"323-6776"
Returns: "VANITY"
"258-1221"
Returns: "VANITY"
"311-4358"
Returns: "EMERGENCY"
"321-9991"
Returns: "VANITY"
"232-2221"
Returns: "VANITY"
"222-3210"
Returns: "VANITY"
"232-4567"
Returns: "VANITY"
"343-4545"
Returns: "VANITY"
"434-2468"
Returns: "REGULAR"
"648-2223"
Returns: "VANITY"
"777-5567"
Returns: "REGULAR"
"453-1357"
Returns: "REGULAR"
"368-9876"
Returns: "VANITY"
"322-2727"
Returns: "VANITY"
"234-2345"
Returns: "VANITY"
"777-5678"
Returns: "VANITY"
"234-5432"
Returns: "VANITY"
"234-1358"
Returns: "REGULAR"
"258-4321"
Returns: "VANITY"
"234-6543"
Returns: "VANITY"
"912-4567"
Returns: "VANITY"
"355-5454"
Returns: "VANITY"
"245-8765"
Returns: "VANITY"
"313-2233"
Returns: "VANITY"
"345-2327"
Returns: "REGULAR"
"222-2223"
Returns: "VANITY"
"046-3975"
Returns: "OPERATOR"
"222-9876"
Returns: "VANITY"
"234-2323"
Returns: "VANITY"
"234-1212"
Returns: "VANITY"
"456-8484"
Returns: "VANITY"
"911-1234"
Returns: "EMERGENCY"
"767-4678"
Returns: "REGULAR"
"234-2233"
Returns: "VANITY"
"678-1232"
Returns: "REGULAR"
"911-4589"
Returns: "EMERGENCY"
"245-7654"
Returns: "VANITY"
"345-2233"
Returns: "VANITY"
"321-8778"
Returns: "VANITY"
"675-0988"
Returns: "REGULAR"
"987-2223"
Returns: "VANITY"
"345-1123"
Returns: "REGULAR"
"492-9753"
Returns: "REGULAR"
"111-3438"
Returns: "LONG DISTANCE"
"911-1357"
Returns: "EMERGENCY"