Problem Statement
Farmer John and Eel Brus are studying string theory at the university. One day John found a very interesting sequence of strings s1, s2, ..., sK and told Brus about it. Brus only remembers the following information:
- Each string in the sequence consists of lowercase letters only.
- The sequence starts with A. In other words, s1 = A.
- The sequence ends with B. In other words, sK = B.
- For each i between 1 and K-1, inclusive, si+1 can be obtained by inserting one lowercase letter to si. For example, if s1 is "tco", valid options for s2 include "qtco", "trco", "tcso", and "tcot", but not "xco", "txoc", or "srm".
Definition
- Class:
- StringSequences
- Method:
- countSequences
- Parameters:
- String, String
- Returns:
- int
- Method signature:
- int countSequences(String A, String B)
- (be sure your method is public)
Constraints
- A will contain between 1 and 49 characters, inclusive.
- Each character in A will be a lowercase letter ('a'-'z').
- B will contain between N+1 and 50 characters, inclusive, where N is the number of characters in A.
- Each character in B will be a lowercase letter ('a'-'z').
- There will be at least one sequence that matches Brus's information in the problem statement.
Examples
"oxoxox"
"foxfoxfox"
Returns: 6
The following six sequences match Brus's information: "oxoxox", "foxoxox", "foxfoxox", "foxfoxfox" "oxoxox", "foxoxox", "foxoxfox", "foxfoxfox" "oxoxox", "oxfoxox", "foxfoxox", "foxfoxfox" "oxoxox", "oxfoxox", "oxfoxfox", "foxfoxfox" "oxoxox", "oxoxfox", "foxoxfox", "foxfoxfox" "oxoxox", "oxoxfox", "oxfoxfox", "foxfoxfox"
"aaaaa"
"aaaaaaaa"
Returns: 1
Only the sequence "aaaaa", "aaaaaa", "aaaaaaa", "aaaaaaaa" matches Brus's information.
"tco"
"tcotco"
Returns: 18
"a"
"alnfrlrealjnsliejsraijneroav"
Returns: 135925750
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
Returns: 1
"m"
"mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm"
Returns: 1
"h"
"vjvvbbhhhbvvjvvvvhvvhhhbvbvvvvvhhnjhvvhvbbhhvhhhhv"
Returns: 567233984
"sssssssssssssssssssssssssssssssssssssssssssssssss"
"ssssssssssssssssssssssssssssssssssssssssssssssssss"
Returns: 1
"wmmemmemmpmmmwmmmmmmmmpmmmmmmmmmmmmmmmmmmemmmmmmw"
"wmmemmemmpmmmmwmmmmmmmmpmmmmmmmmmmmmmmmmmmemmmmmmw"
Returns: 1
"ggggggggg"
"gggggggggggggggggggggggggggggggggggggggggggggggggg"
Returns: 1
"bbbbbbbbbbbbbb"
"bbbbbbbbbbbbbbbbbbbbbb"
Returns: 1
"qqqqqqqqqqqqqqqqqqqqqq"
"qqqqqqqqqqqqqqqqqqqqqfqqqqqqqqqqqqqqqqqqqqfqqqqqqq"
Returns: 317868247
"n"
"ns"
Returns: 1
"ppmtmtttppmtmpppmtmtmp"
"ppmmmpmtmpttmttptpmttptmtmppmppttpmtpppppmmtmmmptp"
Returns: 856841145
"mmm"
"ummfmfmmmm"
Returns: 2233
"yrhy"
"yyyyyyryyryyhyryyyyyhhyyghyyyyyyhyryyhghyyhyhhyhyr"
Returns: 228902867
"oooozzzzszzz"
"ojozjooozzzzsozzzz"
Returns: 1500
"ututhhhvtuhvdtthtthttttvuvtttuhvtudhvttvtudtd"
"ututhhhvttuhvdttthtthttttvuvtttuhvtudhvtttdtvtudtd"
Returns: 120
"g"
"jjugxgjjuxxucxjxjgxgx"
Returns: 322284528
"kawzwwmwmmkzzwwwwzzwazwwwwzmzkwwwmwwz"
"kwwawmzwmwwmwmmkzzwwwwzwnwzwazwwwwzwmzkkwwwzmwzwzw"
Returns: 891887979
"mccbmmcpb"
"cbmbccpcmbbmpbemcyebbcccbccbpcmmcbcbmcpcbccc"
Returns: 543695066
"dscscrfcsrssryyssssrssscys"
"dfscccschysddsrfcsrssrcfhssyysrsfsssrssyscyyssyfhh"
Returns: 367020026
"kjddydqjddddjqqjqqqjdqddjqqyjdyjdyjeejqddeqkq"
"kjddydjqjdjdddjqqjqqqjdqddjqqyjdyjdyjqeejqqddeqkq"
Returns: 24
"aoazhocozzazzcbaaczhcaabochoozzzhbz"
"aboaoazhzocozzazazcbaaczhozaczzaczoabochooczzczhbz"
Returns: 565811799
"bdjjzr"
"rdbjddrdjjbddjdbzzdbdzdbzdjjrd"
Returns: 592000699
"dothgjgwohwog"
"dohhghgdgotgwvghoovwjtghjtdvjowwgogowowohwohgowgjj"
Returns: 656855350
"umtumemmt"
"ueukueuumetuetmueeemmte"
Returns: 21585348
"ziozoozzozozhiso"
"msszioozooszzhzzuzihozjzoikfoojjuzzihihszsoujuhhoi"
Returns: 70317818
"kbkkbzzzuzkzzzzbbzbhkkkkkz"
"kzbkxkbzzzzxzuzkzzkzzbzbzbhzktkkkkkz"
Returns: 5443200
"hhhccdfccqfoqvqfdohoc"
"cfhchhofqqcdchcdocfdochhhchcqcfohoqcovfqofdohqfhoc"
Returns: 780045212
"iltljhoww"
"ilotouttlljlllojtohohllwwojlutll"
Returns: 281796213
"jtddjjdjjdxjdjtjdsjdjjdmvv"
"xxjvtddtjjdjxtxjdttxjdjxjtjdjsjjxjddjjjdmvjjtjxvxx"
Returns: 210407968
"qgzwqqqkuwwqgdzuduquqqgvqkqtvqutzwkgqu"
"qgztwqqqkgvkquwwqgdqzududquqtwqqtgvqkqtvqustzwkgqu"
Returns: 330559993
"hhnhhmjjnnbhmhhjnhqhmhmwhmjm"
"hjhhnhhjhmjjnnhbhhmhhjkhjhnhjhhqmahamhnhmwhmmjmbhj"
Returns: 969309634
"yspppgouf"
"gyspuppgougf"
Returns: 6
"wuucedpexxeqqdde"
"pwqrrccxeguxucpoedbucpxwxexcgcxeeqxxdqxxuwdexdcpce"
Returns: 169823218
"buful"
"uuxufubufyxtwtufxuxfufgufulxtdfxxdff"
Returns: 428644465
"fhhhlhwfbffhfdiflofhh"
"fhhhhwlhhalflbwrlwhlofwbfflhlbwfdiwrbflloofhhlflhv"
Returns: 919988566
"scnungnhhbatt"
"scnunygnhhbatt"
Returns: 1
"svhakuv"
"kkhuacduvqvursvvsheviiovekracrvkvrcvvvrvaivrvkkukv"
Returns: 167504566
"odhviotztodptttodzpohom"
"odhphviotztodptttodzhpohztodm"
Returns: 1080
"rrylpotpvoptaalny"
"rzarryltbzbpoborbptptnvrhooplbovatbzpayralnbyrzotz"
Returns: 715740723
"ipvxl"
"iooxlslspvldvxlpyodli"
Returns: 789741546
"zkkzkjgtkkkzkzcerjkkkzknrkkkkkenk"
"jzrkukjzkjgztkzlekkzkzcerjkkknztkejnrkkkkekkejnkez"
Returns: 138409283
"torooooioioopttpoo"
"toroooooioiitoopoopptftpoo"
Returns: 50400
"nensenctinstnnncrgnnsaatsssintstgwgaswacwhnaw"
"tnensennctinstnnncsrgnnsgaantsssintstgwgaswacwhnaw"
Returns: 120
"hhgchococqqcoq"
"cchlphjoggchhgnoccoqpcqgcqhccoqchmmpgt"
Returns: 164407325
"oqazcfqckqkc"
"gqaosocyoqogoaadscdqkqizdrqqcfceqidkaoqacikqzkqqjc"
Returns: 280654639
"ydecdctheyecihhfcymeeeshbbcmhyhhnpti"
"yydecddecthecyescishhfcsymeelelcshbmbcymhyhhnzpti"
Returns: 227020758
"xly"
"iqyyyqqoqxqolpyqyyowywwywyyynxxlyolwomiglmyylixwpx"
Returns: 341178437
"f"
"utzztfo"
Returns: 330
"wwdwugcccscdbdqlsdbnebncdwuslgmnbmwbnmcccdxwwqqcs"
"wwdwugcccscdbdqlsdbnebncdwuslgmnbmwbnmcdccdxwwqqcs"
Returns: 1
"qxvtozgrotx"
"qxvfteozpgrotax"
Returns: 24
"wjpthvzvutlzczjwrhgggeznnonpnip"
"zwfjjjpythgvnznvjuctlzczjwrthdglggfeyfzcnnoanpnhip"
Returns: 778658157
"iz"
"sippriezapjmejyybnfprzubznm"
Returns: 155943236
"hxxovmtnhlpdhrglelvtt"
"enbhmhxdxyovmtznzheemvlatetrpdhhtdrgglelzlvhpdtltt"
Returns: 427001322
"inibynybyfqzkzhjdg"
"ishcjnibynyibyhfzffzqzihkhzdzihjindgiy"
Returns: 272843716
"ssuacksjfdfeaawsugsujcscc"
"ssyueqeackusnejefdfhckesjaesawskusgksrwusjecssccby"
Returns: 367276990
"skmpepz"
"skmtpuexdrpafzm"
Returns: 40320
"pwnixaxphazncxisbrianwbdguzrbgonbgbpge"
"oxpwpnrirxaxphazncxisbriphbgaynwbdguzrabgaonbgbpge"
Returns: 479001600
"wpyuwbqbzeuwlupqzvquyvpbzmvgbo"
"wwpyuwbqbzeuwlupqzvquyvpbzmvgbo"
Returns: 1
"a"
"aa"
Returns: 1
"a"
"ababababababababababababababababababababababababab"
Returns: 600342224
"aaaaaaaaaaaaaaaaaaaaaaaaa"
"ababababababababababababababababababababababababab"
Returns: 440732388
"a"
"abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
Returns: 1
"a"
"bbbbbbbbbbabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
Returns: 217822480
"bab"
"bbbbbbbbbbabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
Returns: 362649138
"ab"
"bbbbbbbbbbabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
Returns: 540715854
"abcdefghijklmnopqrstuvwxy"
"abcdefghijklmnopqrstuvwxyabcdefghijklmnopqrstuvwxy"
Returns: 18309623
"c"
"abcdefghijklmnopqrstuvwxyabcdefghijklmnopqrstuvwxy"
Returns: 396869543