Problem Statement
In a certain European country, railroad cars consist of 9 compartments, each containing 4 seats. There are two possible numeration methods for the seats: the domestic numeration and the international numeration.
- In the domestic numeration, the seats in the first compartment are numbered 1 through 4, the seats in the second compartment are numbered 5 through 8, and so on.
- In the international numeration, every seat's number consists of two digits. The first digit is the number of the compartment and the second digit is the number of the seat within that compartment. Compartments are numbered 1 through 9, and the four seats within each compartment are numbered 1, 3, 4, 6 (in the same order as in the domestic numeration).
You are given a
Definition
- Class:
- RailroadSeatNumeration
- Method:
- getInternational
- Parameters:
- int[]
- Returns:
- String
- Method signature:
- String getInternational(int[] tickets)
- (be sure your method is public)
Constraints
- tickets will contain between 1 and 36 elements, inclusive.
- Each element of tickets will be between 1 and 100, inclusive.
- tickets will contain no duplicate elements.
Examples
{1}
Returns: "11"
Seat number 1 exists only in the domestic numeration, and it corresponds to seat number 11 in the international numeration.
{11}
Returns: "AMBIGUOUS"
Seat number 11 exists in both numerations, so we cannot figure out which numeration is used here.
{45}
Returns: "BAD DATA"
No seat can be numbered 45 in any numeration.
{5, 7, 6}
Returns: "21 24 23"
Remember to return tickets in the same order as in the input.
{21, 24, 23}
Returns: "AMBIGUOUS"
{44}
Returns: "44"
{36, 3, 19, 20, 5}
Returns: "96 14 54 56 21"
{8, 28}
Returns: "26 76"
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36}
Returns: "11 13 14 16 21 23 24 26 31 33 34 36 41 43 44 46 51 53 54 56 61 63 64 66 71 73 74 76 81 83 84 86 91 93 94 96"
1 through 36
{11, 13, 14, 16, 21, 23, 24, 26, 31, 33, 34, 36, 41, 43, 44, 46, 51, 53, 54, 56, 61, 63, 64, 66, 71, 73, 74, 76, 81, 83, 84, 86, 91, 93, 94, 96}
Returns: "11 13 14 16 21 23 24 26 31 33 34 36 41 43 44 46 51 53 54 56 61 63 64 66 71 73 74 76 81 83 84 86 91 93 94 96"
all international tickets
{16, 26}
Returns: "AMBIGUOUS"
{1 , 24 , 2 , 13 , 11 , 32 , 27 , 28 , 12 , 22 , 15 , 19 , 26 , 34 , 14 , 10 , 23 , 5 , 18}
Returns: "11 66 13 41 34 86 74 76 36 63 44 54 73 93 43 33 64 21 53"
random domestic tickets
{11, 66, 13, 41, 34, 86, 74, 76, 36, 54, 63, 44, 73, 43, 53, 33, 93, 64, 21}
Returns: "11 66 13 41 34 86 74 76 36 54 63 44 73 43 53 33 93 64 21"
random international tickets
{2}
Returns: "13"
{87}
Returns: "BAD DATA"
{86}
Returns: "86"
{100}
Returns: "BAD DATA"
{2, 92}
Returns: "BAD DATA"
{42 , 58 , 21 , 52 , 53 , 76 , 43}
Returns: "BAD DATA"
random test
{16 , 4 , 22 , 9 , 15 , 25}
Returns: "46 16 63 31 44 71"
{16 , 14 , 11 , 13 , 53 , 26 , 44 , 24}
Returns: "16 14 11 13 53 26 44 24"
{16 , 14 , 11 , 13 , 52 , 26 , 44 , 24}
Returns: "BAD DATA"
{22, 33}
Returns: "63 91"
{22, 44}
Returns: "BAD DATA"
{22, 11}
Returns: "63 34"
{33, 11}
Returns: "AMBIGUOUS"
{17, 51 }
Returns: "BAD DATA"
{11, 76 }
Returns: "11 76"
{10 }
Returns: "33"
{2, 11 }
Returns: "13 34"
{36, 46 }
Returns: "36 46"
{44 }
Returns: "44"
{8, 96 }
Returns: "BAD DATA"
{11, 91 }
Returns: "11 91"
{1, 11 }
Returns: "11 34"
{11, 44 }
Returns: "11 44"
{1, 44 }
Returns: "BAD DATA"
{41 }
Returns: "41"
{8, 91 }
Returns: "BAD DATA"
{56 }
Returns: "56"
{96 }
Returns: "96"
{36 }
Returns: "AMBIGUOUS"
{6 }
Returns: "23"
{41, 61, 44 }
Returns: "41 61 44"
{35, 91 }
Returns: "BAD DATA"
{10, 91 }
Returns: "BAD DATA"
{54, 12 }
Returns: "BAD DATA"
{54 }
Returns: "54"
{11, 100 }
Returns: "BAD DATA"
{31, 41, 33, 84, 76 }
Returns: "31 41 33 84 76"
{41, 96 }
Returns: "41 96"
{11, 45 }
Returns: "BAD DATA"
{10, 11 }
Returns: "33 34"
{13, 76 }
Returns: "13 76"
{21, 8 }
Returns: "61 26"
{36, 64 }
Returns: "36 64"
{12 }
Returns: "36"
{91, 11 }
Returns: "91 11"
{91 }
Returns: "91"
{11, 96 }
Returns: "11 96"
{96, 11 }
Returns: "96 11"
{13, 1 }
Returns: "41 11"
{11, 41 }
Returns: "11 41"
{11, 48 }
Returns: "BAD DATA"
{22 }
Returns: "63"
{91, 93 }
Returns: "91 93"
{1, 2, 3, 33, 36, 67 }
Returns: "BAD DATA"
{11, 21, 31, 51 }
Returns: "11 21 31 51"
{81, 83, 84, 96 }
Returns: "81 83 84 96"
{100, 99 }
Returns: "BAD DATA"
{46 }
Returns: "46"
{22, 44 }
Returns: "BAD DATA"
{11, 37 }
Returns: "BAD DATA"
{81 }
Returns: "81"
{1, 81 }
Returns: "BAD DATA"
{24, 37 }
Returns: "BAD DATA"
{37 }
Returns: "BAD DATA"
{1, 2, 3, 36 }
Returns: "11 13 14 96"
{16, 5 }
Returns: "46 21"
{1, 2, 3, 76 }
Returns: "BAD DATA"
{96, 35 }
Returns: "BAD DATA"
{11, 86 }
Returns: "11 86"
{11, 43 }
Returns: "11 43"
{43, 12 }
Returns: "BAD DATA"
{3, 71 }
Returns: "BAD DATA"
{29 }
Returns: "81"
{100 }
Returns: "BAD DATA"
{91, 1 }
Returns: "BAD DATA"
{96, 21 }
Returns: "96 21"
{39 }
Returns: "BAD DATA"
{21, 24, 23, 45 }
Returns: "BAD DATA"
{34, 96 }
Returns: "34 96"
{51, 11 }
Returns: "51 11"
{94, 74, 64 }
Returns: "94 74 64"
{11, 99 }
Returns: "BAD DATA"
{56, 1 }
Returns: "BAD DATA"
{44, 6 }
Returns: "BAD DATA"
{46, 11 }
Returns: "46 11"
{13, 93 }
Returns: "13 93"
{41, 1 }
Returns: "BAD DATA"
{1 }
Returns: "11"
{91, 5, 15, 35, 21 }
Returns: "BAD DATA"
{1, 41 }
Returns: "BAD DATA"
{43 }
Returns: "43"
{6, 76 }
Returns: "BAD DATA"
{1, 13 }
Returns: "11 41"
{23, 73 }
Returns: "23 73"
{38 }
Returns: "BAD DATA"
{76, 83, 94 }
Returns: "76 83 94"
{11, 12 }
Returns: "34 36"
{14, 1 }
Returns: "43 11"
{8, 28, 11, 45 }
Returns: "BAD DATA"
{71, 73, 74, 76, 81, 83, 84, 86 }
Returns: "71 73 74 76 81 83 84 86"
{93 }
Returns: "93"
{33, 93 }
Returns: "33 93"
{21, 24, 37 }
Returns: "BAD DATA"
{41, 43, 44, 12 }
Returns: "BAD DATA"
{9, 10, 11, 12 }
Returns: "31 33 34 36"
{28, 9, 5, 10 }
Returns: "76 31 21 33"
{36, 9, 8 }
Returns: "96 31 26"
{41, 9 }
Returns: "BAD DATA"
{33, 43 }
Returns: "33 43"
{16, 14, 5 }
Returns: "46 43 21"
{11, 23, 46 }
Returns: "11 23 46"
{76, 26 }
Returns: "76 26"
{44, 46 }
Returns: "44 46"
{31, 61 }
Returns: "31 61"
{11, 91, 93, 94, 96 }
Returns: "11 91 93 94 96"
{86 }
Returns: "86"
{21, 24, 23, 76 }
Returns: "21 24 23 76"
{95 }
Returns: "BAD DATA"
{94, 35 }
Returns: "BAD DATA"
{44, 15, 99 }
Returns: "BAD DATA"
{36, 1 }
Returns: "96 11"
{13, 46 }
Returns: "13 46"
{42 }
Returns: "BAD DATA"
{12, 44 }
Returns: "BAD DATA"
{12, 44, 11 }
Returns: "BAD DATA"
{13, 14, 96 }
Returns: "13 14 96"
{96, 23 }
Returns: "96 23"
{8, 28 }
Returns: "26 76"
{4, 76 }
Returns: "BAD DATA"
{1, 12, 8, 73, 65 }
Returns: "BAD DATA"
{8, 28, 36, 86 }
Returns: "BAD DATA"
{24, 51 }
Returns: "24 51"
{24, 56 }
Returns: "24 56"
{43, 46 }
Returns: "43 46"
{21, 22, 23, 24 }
Returns: "61 63 64 66"
{8, 54 }
Returns: "BAD DATA"
{1, 11, 37 }
Returns: "BAD DATA"
{11, 46 }
Returns: "11 46"
{36, 11, 1 }
Returns: "96 34 11"
{33, 1, 11 }
Returns: "91 11 34"
{96, 23, 54 }
Returns: "96 23 54"
{12, 36, 1, 2, 15 }
Returns: "36 96 11 13 44"
{35 }
Returns: "94"
{11, 21, 31, 41 }
Returns: "11 21 31 41"
{11, 1 }
Returns: "34 11"
{11, 31, 41 }
Returns: "11 31 41"
{11, 22, 91 }
Returns: "BAD DATA"
{24, 22 }
Returns: "66 63"
{16 }
Returns: "AMBIGUOUS"
{1, 11, 55, 46 }
Returns: "BAD DATA"
{11, 35 }
Returns: "34 94"
{91, 93, 94, 96 }
Returns: "91 93 94 96"
{5 }
Returns: "21"
{13, 20 }
Returns: "41 56"
{13, 91, 1 }
Returns: "BAD DATA"
{44, 12 }
Returns: "BAD DATA"
{12, 13 }
Returns: "36 41"
{76 }
Returns: "76"
{94 }
Returns: "94"
{9, 46, 100 }
Returns: "BAD DATA"
{9, 91 }
Returns: "BAD DATA"
{1, 96 }
Returns: "BAD DATA"