Problem Statement
f( f( f( ... f(a) ... ) ) ) : f applied iter times to the string "a"Since the lengths can grow very large with only a few iterations, you will return the length mod m. For example, if
arep = abc brep = c crep = ba iter = 3 m = 7then you will find the length of
f(f(f(a))) = f(f(abc)) = f(abccba) = abccbabacabc ,which is 12. Then you will compute 12 mod 7 = 5, and return 5.
Definition
- Class:
- MultiReplacer
- Method:
- length
- Parameters:
- String, String, String, int, int
- Returns:
- long
- Method signature:
- long length(String arep, String brep, String crep, int iter, int m)
- (be sure your method is public)
Constraints
- arep, brep, and crep will contain between 1 and 50 characters inclusive.
- Each character in arep, brep, and crep will be 'a', 'b', or 'c'.
- iter will be between 1 and 2000000000 inclusive.
- m will be between 2 and 2^31-1 inclusive.
Examples
"abc"
"c"
"ba"
3
7
Returns: 5
Same as above.
"b"
"c"
"a"
2000000000
100
Returns: 1
"b"
"c"
"aa"
30
10000
Returns: 1024
"acabbcabbabac"
"cababcababcabcabacbacbabcacb"
"acbacbabcababcabababbabcbcab"
2000000000
2000000000
Returns: 1876480521
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
1999999997
2000000001
Returns: 1960000001
"aa"
"bbbbbbbbbbb"
"ccccccccccccccccccc"
1
10
Returns: 2
"aa"
"b"
"c"
2
10
Returns: 4
"aa"
"b"
"c"
3
10
Returns: 8
"aa"
"b"
"c"
4
10
Returns: 6
"aa"
"b"
"c"
4
2
Returns: 0
"aa"
"b"
"c"
2
2
Returns: 0
"bbbccc"
"b"
"c"
1000
1000
Returns: 6
"b"
"ab"
"ccccc"
40
2100000000
Returns: 165580141
"bbbaabcacbacb"
"abacabbbaabbaacbcaacbaccbccbbcbcbbc"
"accbacaaacbabacc"
826865891
239376250
Returns: 191366368
"baacbbacabacabcccabacbccbaaaacaccbbccccacbcbbb"
"bbaabccbbabbcbcbbcabbaababaabacbacaaccccabbabab"
"cbacbcbbcbccaccacbabccbbbcaacbaccacccabbcc"
1022791726
1320463375
Returns: 200884814
"accbacabbcabbcb"
"bccba"
"aaaaccbcccbbaaabccccabbbcababcabccacab"
1380722684
1023653238
Returns: 342126284
"a"
"cbccacbacbcaccbc"
"bbaabacbcaccacabbaaacbcbacbbccbabbbbbabbbac"
1816160895
1664431527
Returns: 1
"bcbabaccabccbaccbccbaacbaacaaaabababbabaaacb"
"caacacbcbcabacacbcbcbbcaccaaacaabcbcacabccaabbacab"
"acbabcbabcbccb"
954768059
1509497780
Returns: 536512196
"aaaccbacaacccaccbaababaabaa"
"abbcaabcbabbbbacaabbaabcba"
"acc"
1636844003
815665426
Returns: 468359928
"ccccbacccbcccaabbacbca"
"ab"
"bccbcbbaaabb"
1618724829
1988502575
Returns: 1622367127
"cbacb"
"aaababcabcbbcabcacacbaaaaacccbcbcbcbbbcbbbb"
"babcabcbbcacabacaccabbacbcacc"
1594054863
1281832307
Returns: 1279902248
"bacccccababbcaaccccacccaccbacaccaaacababcbb"
"aaacccabaacbababcaaabacbaaccbcaaabbbabcabbbbaab"
"cbccbbcbaccbacbcacbcbaaacaacaaacacbbaca"
1938514050
741088457
Returns: 468345425
"bbcabcaccbccabbaac"
"bcbaccabbbacac"
"bccccbcacaaacbbbbbcbacbbbcbacabbaaa"
1536144095
502217385
Returns: 291351435
"baccaaabbbccacccaaabcbbbcbaacacbbac"
"bbabcaacbcbccccabcbcabb"
"cbcccaabccbbabbabcbacaacbbcbcbabcbbbcbababcbac"
772677291
501783496
Returns: 139864848
"aaacabcbcaccacabbabbbcaab"
"cb"
"aacbbac"
1914840539
418173961
Returns: 21291675
"abccbbbabbabbcbababbccaaaccbc"
"babbbbbbacbbabccba"
"cbabbccbbabcababbbccbabbbcccbaac"
796266902
2036410279
Returns: 1973431835
"bccbcbcbbccbbcacacbabbcccbcbcbcccbaabcacbabb"
"ccacabbbabbacaaabbbabaaabccbacaaabbcabaca"
"cccabcacbcbbbccbaaaccacbbacaaabcc"
1175705567
715271188
Returns: 275047018
"baccaabcaaabbcbaccbbacccaaccbaa"
"bcbcccccbaacbbbaccccacacccaacbacbacbbcbcabbaccb"
"cbbabcaaababbbbcaacbacbcabcaaaacbcacbba"
719229319
2104489795
Returns: 205213816
"cbaaacccbabaaaabcbababbbabcbabcb"
"c"
"aaababbaaabbcaabbac"
1372252797
98053647
Returns: 96049534
"bbcabaababcccaccbbb"
"cbaabcaccacab"
"aaacaaabaacaaacaacbccbaccbabccabbacbaaccaab"
506591718
902918693
Returns: 383320859
"ccabbbaaabbbacaacbbc"
"aaaccabac"
"cbcabcccaaabbccaccbababcaacaccccbcccbbabba"
862818600
744506415
Returns: 59791538
"cbcbbbbcbcccbacacbba"
"aacabbcbaababbcbaabcbaacbbcbccabcabccacabcca"
"abacababbbbcbbaacbbbccbcabcbaa"
399838958
920534278
Returns: 298017450
"bbccccabacabbbbbcabcacababacbccbcbcbccaabcba"
"cbcbcaacbcbbbcacacbbabaa"
"bcbacbaabaabaacabaaacabcc"
1980848377
1748419839
Returns: 1452179564
"bccbbccbbcbb"
"ab"
"acbacabaacacccbbbcccaabaccccbacbcccabbcaabbcca"
1672262369
1348991789
Returns: 869547815
"abbbcbcbacaaaabcbbaccbcccbbaaaacaccabbcabbac"
"ccb"
"bcbbacacbaacaca"
840645091
520886083
Returns: 218262886
"bbabaccabbbcccacc"
"acaacaccacb"
"cccccacbacaccabcbac"
828709055
1059655499
Returns: 840397692
"bbacbccacbcbcccbcccabcabcbacbcbbabccaabcbbbbb"
"cbaccaacccbbaccbcacccbcabaaabacbacaccaaacababbcaa"
"bbbbcbcc"
1630158744
1875541131
Returns: 1404795644
"aacaaacaaabababaaaabcbcacaccbacbac"
"baaaaabcabaabbcbaccacbbbabababacbbaaaabccaaaaacc"
"cbcbbcacbbacbabccbac"
977939534
2071873788
Returns: 1010411052
"acaabbcccabcbacbabcaccaacbbbabbacabacabaaaa"
"cbaabcabaaccbacacababbaacbacc"
"accbaaabbcaacabbcbbabbccc"
337056029
353529667
Returns: 318091986
"aabcacabbbbbaacababcacbbaccbccbabacbcbbaca"
"bbaabbbbbaccabbcacccbbcababcacb"
"bacbbaaccabccababbacbaacbbcbcacabaaccccaa"
1972858286
1384927261
Returns: 1064975669
"abaaccabcbcaacbbaabcaaaaabbabba"
"aacbababaaacbbbbbcaaabbbccaba"
"accaaacbaabcacbabbaabbabacbccbcaaacba"
1560773805
685962564
Returns: 634017671
"babcacb"
"bacabbbcccaabaa"
"acaaabcacbcaa"
1995932921
31433924
Returns: 2135191
"cbbaccacbcaccaacabcaacabbabccbcbcaabaaabc"
"cbccbbcaccbcbbabccacaaabc"
"ccacbbaaacbbaaabcbcac"
522623770
36029667
Returns: 19224968
"acbabcbcbbbacabbbabbcca"
"aabcbbbbabacababaabbaac"
"cca"
138166463
2147483647
Returns: 215913811
"aaaaabcabbbbccacacbaccaccb"
"aabcabcccbbabaccccbcbbaacabaabbbbaacbbb"
"abbcbc"
955909474
2147483647
Returns: 445673145
"abcaacbcbaaaacbbbcaccbccccbabab"
"ccbcbcbbacaccbaaabaabbbabbabcacabbaac"
"bcacabaccaacacc"
517235962
2147483647
Returns: 1907061609
"ccaabaaacacbbababbabbbcacaaabaabbcaacaaabaccbbca"
"bbbabcbcbbabbabbbabaaacbccbccaccbbbaaabaabbbca"
"babbcaaaaaabccaacbacca"
107576523
2147483647
Returns: 225386672
"abbaacbb"
"cbbcaabcacabbaaaacbbcbccacbbcababccbbcabbacb"
"bcaccbcbbcbbbbcabcacbbbcbbaccbbcbacabccacabaacbcb"
1405880388
2147483647
Returns: 1951307027
"cbcacbcbbcaabcabbcbaaccccba"
"ccbccaaaacaacbcaabbbacbbbabaaaccabbbacbbac"
"cacaaacbaaccbcbcccccabaaccabaccacb"
1073451030
2147483647
Returns: 2090882855
"cbaccabbbcacaccacccbccbacaccacb"
"cccbbbabacbaaabcacccaccccbbbccbb"
"cccababa"
112467467
2147483647
Returns: 1682838249
"baaaaaacacbcccbcbcacccbcacbbbbcbbbcca"
"ba"
"abccccbaacaccbabcbcabbaa"
1753435327
2147483647
Returns: 408509933
"aacc"
"cbbcabcbbcacaccabccacacacabca"
"bbbbccbcbccaaccababbab"
1272732338
2147483647
Returns: 984737429
"acbbbab"
"bbccacbcbacbbcaaabbaacaaaab"
"bccaaaa"
1180200706
2147483647
Returns: 1037177613
"acabbcabbabac"
"cababcababcabcabacbacbabcacb"
"acbacbabcababcabababbabcbcab"
2000000000
2000000000
Returns: 1876480521
"ab"
"bc"
"ac"
2000000000
5
Returns: 1
"abca"
"bccc"
"cbac"
2000000000
1988989
Returns: 828546
"abcabcabc"
"abcabcabc"
"abcabcabc"
91
2147483647
Returns: 1202204424