Problem Statement
Definition
- Class:
- WordConnect
- Method:
- numComponents
- Parameters:
- String, String[]
- Returns:
- int
- Method signature:
- int numComponents(String word, String[] table)
- (be sure your method is public)
Constraints
- word will contain between 1 and 26 lowercase letters ('a'-'z'), inclusive.
- Each character in word will be distinct.
- table will contain between 1 and 50 elements, inclusive.
- Each element of table will contain between 1 and 50 characters, inclusive.
- Each character in table will be a lowercase letter ('a'-'z').
- Each element of table will contain the same number of letters.
Examples
"top"
{ "toptoptop", "toptoptop" }
Returns: 6
There are 6 separate components. Each is numbered below: 111222333 444555666
"top"
{ "aaaaaaaaaaa", "aaaopopoaaa", "aaatototaaa", "aaaopopoaaa", "aaaaaaaaaaa" }
Returns: 41
Here there is one large central component, and a surrounding sea of single character components.
"topcader"
{ "topcader", "oaaaaaae", "paaaaaad", "caaaaaaa", "aaaaaaac", "daaaaaap", "eaaaaaao", "redacpot" }
Returns: 37
A single component lines the outer edge, surrounding a sea of single character components.
"topcader"
{ "topcoder", "oaaaaaae", "paaaaaad", "caaaaaaa", "aaaaaaac", "daaaaaap", "eaaaaaao", "redocpot" }
Returns: 50
"a"
{ "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaa" }
Returns: 220
"ab"
{ "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab", "ababababababababababababababababab" }
Returns: 12
"ab"
{ "abababababababababababababababababababab", "babababababababababababababababababababa", "abababababababababababababababababababab", "babababababababababababababababababababa", "abababababababababababababababababababab", "babababababababababababababababababababa", "abababababababababababababababababababab", "babababababababababababababababababababa", "abababababababababababababababababababab", "babababababababababababababababababababa", "abababababababababababababababababababab", "babababababababababababababababababababa", "abababababababababababababababababababab", "babababababababababababababababababababa" }
Returns: 1
"ab"
{ "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa" }
Returns: 1
"ab"
{ "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab", "bababababababababababababababababababababababababa", "ababababababababababababababababababababababababab", "ababababababababababababababababababababababababab" }
Returns: 48
"abcdefghijklmnopqrstuvwxyz"
{ "ab", "dc", "ef", "hg", "ij", "lk", "mn", "po", "qr", "ts", "uv", "xw", "yz", "xy"}
Returns: 3
"abcdefghijklmnopqrstuvwxyz"
{"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwx", "bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxy", "cdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz", "defghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyza", "efghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzab", "fghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabc", "ghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd", "hijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcde", "ijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdef" }
Returns: 23
"abcdefg"
{ "abcdefg", "babadef", "cbabcde", "dababcd", "edcbabc", "fedcbab", "gfedcba" }
Returns: 1
"abcdef"
{ "abcdefg", "babadef", "cbabcde", "dababcd", "edcbabc", "fedcbab", "gfedcba" }
Returns: 3
"abcdefgh"
{ "abcdefg", "babadef", "cbabcde", "dababcd", "edcbabc", "fedcbab", "gfedcba" }
Returns: 49
"abcdef"
{ "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba" }
Returns: 24
"abcdefg"
{ "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba", "abcdefgfedcba" }
Returns: 8
"abcdefg"
{ "abcdefg", "bcaaaaa", "cdeaaaa", "dafgaaa", "eaafeaa", "faaadca", "gaaaaba" }
Returns: 25
"abcd"
{ "abcdabcd", "beecbeec", "ceebceeb", "dcbadeea" }
Returns: 11
"abcde"
{ "abcdeabcde", "bfffdbfffd", "cfffccfffc", "dfffbdfffb", "edcbaedcba" }
Returns: 20
"abcd"
{ "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "cxxbxdcbabcxxbxdcbabcxxbxdcbabcxxbxdcbabcxxbxdcbab", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcdxbxxxxabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax", "dcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxxdcbaxxbxxx", "xbxxcbabcdxbxxcbabcdxbxxcbabcdxbxxcbabcdxbxxcbabcd", "xabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbxxabcdxxxbx", "xxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbaxxxxbxdcbax"}
Returns: 1243
"abcdefghijklmnopqrstuvwxyz"
{"abcdefghijklmnopqrstuvwxyz", "bcdefghijklmnopqrstuvwxyzy", "cdefghijklmnopqrstuvwxyzyx", "defghijklmnopqrstuvwxyzyxw", "efghijklmnopqrstuvwxyzyxwv", "fghijklmnopqrstuvwxyzyxwvu", "ghijklmnopqrstuvwxyzyxwvut", "hijklmnopqrstuvwxyzyxwvuts", "ijklmnopqrstuvwxyzyxwvutsr", "jklmnopqrstuvwxyzyxwvutsrq", "klmnopqrstuvwxyzyxwvutsrqp", "lmnopqrstuvwxyzyxwvutsrqpo", "mnopqrstuvwxyzyxwvutsrqpon", "nopqrstuvwxyzyxwvutsrqponm", "opqrstuvwxyzyxwvutsrqponml", "pqrstuvwxyzyxwvutsrqponmlk", "qrstuvwxyzyxwvutsrqponmlkj", "rstuvwxyzyxwvutsrqponmlkji", "stuvwxyzyxwvutsrqponmlkjih", "tuvwxyzyxwvutsrqponmlkjihg", "uvwxyzyxwvutsrqponmlkjihgf", "vwxyzyxwvutsrqponmlkjihgfe", "wxyzyxwvutsrqponmlkjihgfed", "xyzyxwvutsrqponmlkjihgfedc", "yzyxwvutsrqponmlkjihgfedcb", "zyxwvutsrqponmlkjihgfedcba" }
Returns: 1
"abcdefghijklmnopqrstuvwxyz"
{"abcdefghijklmnopqrstuvwxyz", "bcdefghijklmnopqrstuvwxyza", "cdefghijklmnopqrstuvwxyzab", "defghijklmnopqrstuvwxyzabc", "efghijklmnopqrstuvwxyzabcd", "fghijklmnopqrstuvwxyzabcde", "ghijklmnopqrstuvwxyzabcdef", "hijklmnopqrstuvwxyzabcdefg", "ijklmnopqrstuvwxyzabcedfgh", "jklmnopqrstuvwxyzabcdefghi", "klmnopqrstuvwxyzabcdefghij", "lmnopqrstuvwxyzabcdefghijk", "mnopqrstuvwxyzabcdefghijkl", "nopqrstuvwxyzabcdefghijklm", "opqrstuvwxyzabcdefghijklmn", "pqrstuvwxyzabcdefghijklmno", "qrstuvwxyzabcdefghijklmnop", "rstuvwxyzabcdefghijklmnopq", "stuvwxyzabcdefghijklmnopqr", "tuvwxyzabcdefghijklmnopqrs", "uvwxyzabcdefghijklmnopqrst", "vwxyzabcdefghijklmnopqrstu", "wxyzabcdefghijklmnopqrstuv", "xyzabcdefghijklmnopqrstuvw", "yzabcdefghijklmnopqrstuvwx", "zabcdefghijklmnopqrstuvwxy" }
Returns: 326