Problem Statement
On most modern PC systems, there is a 2-wire bus called the System Management Bus, or SMBus, which is based on the I2C protocol. This bus is used to talk to multiple devices on the system such as temperature sensors, or batteries. The most significant achievement of the I2C protocol is that it requires no more than 2 wires, and is not susceptible to collisions (unlike other hardware protocols, like ethernet). Collisions occur when two masters (devices which transmit messages) try to transmit at the same time and the resulting data is invalid. For I2C, the first bit transmitted by one master which is different than the bit transmitted by another master causes an "arbitration" to occur. The data being transmitted on the bus is the logic and-ed value of all the data being transmitted by the masters. Therefore, if one master is transmitting a '1' and another is transmitting a '0', the '0' will be transmitted and the '1' will not. The master transmitting the '1' detects that it is not able to transmit, and stops transmitting. The arbitration is not detected by the master transmitting the '0', or by the slave receiving the '0', so the message can continue without any collisions.
Since '0' bits that occur earlier in messages always win, the master transmitting the lowest byte always wins arbitration. For example, if one master was transmitting "01234", and another master was transmitting "01245", both masters would transmit the first three bytes, but the first master would win arbitration on the fourth data byte, since '3' is less than '4'.
Multiple masters can start transmissions at the same time, but if a transmission has already started, another master cannot start one in the middle of the transmission. Therefore, if one master is transmitting "01234", and has already transmitted the '0', another master wanting to transmit "1234" cannot start its transmission until the first master is finished.
The speed of transmission of each master is also allowed to vary. The speed at which each byte is transferred is determined by the slowest transmitting master. If a master loses arbitration of the bus, it continues to drive the clock signal (which determines the speed) for the remainder of the current byte, but then stops driving the clock for the rest of the transmission. In other words, the speed that each byte is transmitted at is determined by the slowest master attempting to transmit during that byte, even if the master loses arbitration during that byte.
Given the description of the I2C protocol above, you are to simulate multiple masters transmitting messages on the bus, and return how long it takes to transmit them. You will be given a
Definition
- Class:
- SMBus
- Method:
- transmitTime
- Parameters:
- String[], int[]
- Returns:
- int
- Method signature:
- int transmitTime(String[] messages, int[] times)
- (be sure your method is public)
Constraints
- messages will contain between 1 and 50 elements, inclusive.
- Each element of messages will contain between 1 and 50 characters, inclusive.
- Each element of messages will consist only of numeric digits '0'-'9', inclusive.
- No element of messages will be a prefix of, or be exactly the same as, any other element of messages.
- times will contain the same number of elements as messages.
- Each element of times will be between 1 and 100, inclusive.
Examples
{"9999", "8999", "8899", "8889", "8888"}
{5,4,3,2,1}
Returns: 80
{"9999", "8999", "8899", "8889", "8888"}
{1,2,3,4,5}
Returns: 60
{"123","124","134"}
{1,2,3}
Returns: 25
Here is a graph of the bytes that are transmitted, which masters are transmitting for each byte, and how long each byte takes to transmit. '-' means the master is transmitting, and '+' means the master was driving clock, but lost arbitration: Data: 123124134 Master1: --- Master2: --+--- Master3: -+ -+ --- Time taken: 332332333 For the first message, all masters successfully transmit the first byte. Since the slowest is 3 milliseconds, the first byte takes 3 milliseconds to transfer. On the second byte, the third master is arbitrated out since the other two transmit a lower byte. However, the third master still drives the clock for the byte, so it is transmitted at 3 milliseconds. The third byte is transmitted by the first two masters, and even though the second master loses arbitration, it drives the clock at 2 milliseconds. The total time for the first message is therefore 3+3+2 = 8 milliseconds long. At this point, the second and third master still haven't transmitted their messages. The second message again takes 8 milliseconds because the third master is arbitrated out on the second byte. The final message is transmitted only by the third master, and therefore takes 9 milliseconds to transmit. The total time for the entire sequence is 8+8+9=25 milliseconds.
{"012", "1234", "1233", "1223", "1123"}
{4,1,5,2,9}
Returns: 94
Again, here is a graph which displays the bytes transmitted, which masters are transmitting, and the resulting times for each byte. '-' means the master is transmitting and '+' means the master is driving clock, but lost arbitration: Data: 0121123122312331234 Master1: --- Master2: + -+ --+ ---+---- Master3: + -+ --+ ---- Master4: + -+ ---- Master5: + ---- Time taken: 9449999555255551111
{"010101010101010101010101010101010101010101", "010101010101010101010101010101010101010102"}
{2,1}
Returns: 126
{"00000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000001", "00000000000000000000000000000000000000000000000011", "00000000000000000000000000000000000000000000000111", "00000000000000000000000000000000000000000000001111", "00000000000000000000000000000000000000000000011111", "00000000000000000000000000000000000000000000111111", "00000000000000000000000000000000000000000001111111", "00000000000000000000000000000000000000000011111111", "00000000000000000000000000000000000000000111111111", "00000000000000000000000000000000000000001111111111", "00000000000000000000000000000000000000011111111111", "00000000000000000000000000000000000000111111111111", "00000000000000000000000000000000000001111111111111", "00000000000000000000000000000000000011111111111111", "00000000000000000000000000000000000111111111111111", "00000000000000000000000000000000001111111111111111", "00000000000000000000000000000000011111111111111111", "00000000000000000000000000000000111111111111111111", "00000000000000000000000000000001111111111111111111", "00000000000000000000000000000011111111111111111111", "00000000000000000000000000000111111111111111111111", "00000000000000000000000000001111111111111111111111", "00000000000000000000000000011111111111111111111111", "00000000000000000000000000111111111111111111111111", "00000000000000000000000001111111111111111111111111", "00000000000000000000000011111111111111111111111111", "00000000000000000000000111111111111111111111111111", "00000000000000000000001111111111111111111111111111", "00000000000000000000011111111111111111111111111111", "00000000000000000000111111111111111111111111111111", "00000000000000000001111111111111111111111111111111", "00000000000000000011111111111111111111111111111111", "00000000000000000111111111111111111111111111111111", "00000000000000001111111111111111111111111111111111", "00000000000000011111111111111111111111111111111111", "00000000000000111111111111111111111111111111111111", "00000000000001111111111111111111111111111111111111", "00000000000011111111111111111111111111111111111111", "00000000000111111111111111111111111111111111111111", "00000000001111111111111111111111111111111111111111", "00000000011111111111111111111111111111111111111111", "00000000111111111111111111111111111111111111111111", "00000001111111111111111111111111111111111111111111", "00000011111111111111111111111111111111111111111111", "00000111111111111111111111111111111111111111111111", "00001111111111111111111111111111111111111111111111", "00011111111111111111111111111111111111111111111111", "00111111111111111111111111111111111111111111111111", "01111111111111111111111111111111111111111111111111"}
{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,37,38,39,40,41,42,43,44,45,46,47,48,49,50}
Returns: 85800
{"00000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000001", "00000000000000000000000000000000000000000000000011", "00000000000000000000000000000000000000000000000111", "00000000000000000000000000000000000000000000001111", "00000000000000000000000000000000000000000000011111", "00000000000000000000000000000000000000000000111111", "00000000000000000000000000000000000000000001111111", "00000000000000000000000000000000000000000011111111", "00000000000000000000000000000000000000000111111111", "00000000000000000000000000000000000000001111111111", "00000000000000000000000000000000000000011111111111", "00000000000000000000000000000000000000111111111111", "00000000000000000000000000000000000001111111111111", "00000000000000000000000000000000000011111111111111", "00000000000000000000000000000000000111111111111111", "00000000000000000000000000000000001111111111111111", "00000000000000000000000000000000011111111111111111", "00000000000000000000000000000000111111111111111111", "00000000000000000000000000000001111111111111111111", "00000000000000000000000000000011111111111111111111", "00000000000000000000000000000111111111111111111111", "00000000000000000000000000001111111111111111111111", "00000000000000000000000000011111111111111111111111", "00000000000000000000000000111111111111111111111111", "00000000000000000000000001111111111111111111111111", "00000000000000000000000011111111111111111111111111", "00000000000000000000000111111111111111111111111111", "00000000000000000000001111111111111111111111111111", "00000000000000000000011111111111111111111111111111", "00000000000000000000111111111111111111111111111111", "00000000000000000001111111111111111111111111111111", "00000000000000000011111111111111111111111111111111", "00000000000000000111111111111111111111111111111111", "00000000000000001111111111111111111111111111111111", "00000000000000011111111111111111111111111111111111", "00000000000000111111111111111111111111111111111111", "00000000000001111111111111111111111111111111111111", "00000000000011111111111111111111111111111111111111", "00000000000111111111111111111111111111111111111111", "00000000001111111111111111111111111111111111111111", "00000000011111111111111111111111111111111111111111", "00000000111111111111111111111111111111111111111111", "00000001111111111111111111111111111111111111111111", "00000011111111111111111111111111111111111111111111", "00000111111111111111111111111111111111111111111111", "00001111111111111111111111111111111111111111111111", "00011111111111111111111111111111111111111111111111", "00111111111111111111111111111111111111111111111111", "01111111111111111111111111111111111111111111111111"}
{ 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1}
Returns: 63750
{"00125674003855482606218465438727", "02001413258731211560107182158355414046", "01091978235137909072", "11015660137", "101025294120347", "00105450", "02108", "0026557531124339378703919407255130649", "0035670595336668333494214790223", "101107082712923653702005784", "217946937988840643988610995651491386043034114366", "306159", "011041285049124727853910656088", "11100910778414902198355635038124", "12019790058390688631808067873549", "4764386267742554112961824013015037018163", "000785657865520", "01110094282967821409", "02015843365970292385923191310592935208788757064", "31498375028315738472554669000", "1100928507222981243799375", "121344032858720744826004681666471236507312165", "00110594313002083245333659690", "0011180928367857580124362315", "0200095651154", "021179840020", "100834664866991387842", "2001771969042", "2011551"}
{26, 82, 81, 14, 92, 21, 89, 86, 15, 75, 28, 43, 89, 89, 38, 47, 17, 93, 2, 6, 31, 92, 21, 49, 43, 83, 56, 46, 11}
Returns: 38910
{"10300", "10318736335224904757870309238317739263694489", "112564702475", "00118611275194", "02043618550184518", "02198864477573805", "1000000459900009818297587936851", "002005875259", "0020139435875710424155100813154", "324894580", "281436199", "1001929456", "00219436365182866654580993757768331809953225640", "010558233015741650", "0110422489728059204872559502201326717648821", "0004729", "1010735144", "1028041355"}
{7, 1, 23, 50, 77, 27, 19, 83, 75, 36, 20, 9, 24, 100, 43, 53, 89, 85}
Returns: 15443
{"0002019289019101039663222896280025447", "00201873554718989597528841094293294387326", "010699029378761", "0110118", "011143279122561420", "001046384966198", "00200570375817801109530240012", "0003163277589822", "01100240744590150136673219652442108", "012033596872642679096489479354", "0121059494098", "00001002303019117948961792176", "00216399923558", "02014", "00224999120803846121427603894967637446889670369", "01101009414735635151893037596051740080475886", "0000101211809647472761605153430927981533514", "176845042961739039392207791589", "02000047506929386333221966659552927385017901842706", "021001117450487502127241076595509511", "021010776262723557108100899515", "0210114830738951774606917781619656", "0211798433083855430", "00000005842153604632996228135814", "0001000766929248550736138555144997170272757787", "0001010247593342056062432721557", "01100004828618452515832113396660046634951", "0132559984733529872911444204991646138116334788", "0224149857349431864906523152249992", "00001142929552573133212195441932219", "0011090498947092002457447355036811372647896489218", "000001275414757476198997466", "00010014", "00111025861963467834393486017602553072649743", "000102085", "00120882661783539", "01100018938145727291185020", "01100191373790478446634214244459341793", "0001129060", "001111287431066271555393813846448", "011010160778408696098486370196313", "0002125146381515395"}
{42, 86, 47, 86, 32, 95, 2, 98, 17, 58, 31, 32, 85, 77, 87, 61, 1, 20, 15, 80, 20, 95, 55, 87, 52, 14, 55, 68, 2, 66, 67, 3, 28, 97, 100, 67, 65, 20, 28, 77, 93, 64}
Returns: 71048
{"0000120415015191", "101434218538861806300016643", "00017925", "001039944490978782552007", "11214245008515948242835073270569", "2099797732068460145644", "010796291552125", "0118702092975300745561178", "21317648145", "02588992260494998358308", "001102791", "001230119567200911600538942674733471264", "00291509823934673326713327765103463", "01220794955", "00000050707506674037853588", "00000167", "00111517254743938094145542369755098072249708275", "100433"}
{19, 79, 79, 36, 44, 39, 49, 35, 88, 65, 83, 100, 77, 67, 78, 18, 35, 69}
Returns: 24344
{"00302000", "003020167406740996509734349", "0020918374125829546191355956384671", "0030210297834917273301958274697", "004000894454628801550007196253312709", "0032011899542543648569782599", "01091491765130565808404420934995570760241815", "193055542561760501646779709415699666", "01134905735", "00001003030383863152862563356806602396517897", "003202073266285472356268662862177355925738657", "0120874364356", "0121923115477434", "00000010236099043047266", "00000114987065455902", "028037966315060198336910835472709498286206390939", "000011704779855", "0030065049261122704364", "00320016466348", "0032157399529446721787935956503", "0021672709882", "003010038542899466", "004001442", "004016276972224537518305", "004100098414858224178083310630051025", "0041014662387114939698", "003177608783", "003011657877490896153200", "004110313722622792143657831532139", "004111133129090881412", "00002898572364777", "0001054894152", "0001189614737750721004958759842600556", "000227981", "00128904630814433756291892031"}
{99, 8, 14, 90, 46, 8, 63, 29, 63, 42, 47, 53, 27, 47, 14, 79, 83, 49, 16, 21, 1, 24, 67, 5, 87, 63, 33, 26, 65, 7, 77, 42, 60, 76, 44}
Returns: 44981
{"024068080420646", "251450180431116947", "00193420187485526717823869514964836322447860499", "01758821711183146157810475023420105478", "137669102971569805"}
{61, 40, 56, 24, 10}
Returns: 5473
{"122527850339373674552066", "13087586763106323649", "140361308290647748849950374334924", "1021075529201", "14100285541039855282410644036687052", "000121364338935078896970624", "153220500519284213283988244029503369167792987823", "0010999910887974997466857169909417", "00112739616573", "030497744677817219967967680096444547", "040448106551179725445", "041063466273424821335655104952210176192298", "0411185947077432731125575235396128", "10105915465804906719095814", "10119339739608026087", "102077787293715533134", "011285", "000000754759188974007637536944", "1021148", "02076467167194", "000002773301681860397792324774852242659569289377", "11233898596739408937032129536473551809467", "000003470983125777", "10006262297", "0104826157988183624564915391152", "0315193220099861197699494152016", "00000117281456395455134091005431960487420945134", "103764690492910649408321184863044785883", "1044762756630296742427204322493", "1056575055656778019438", "000016851671148390828594934424172701762280353649"}
{88, 4, 56, 31, 63, 25, 65, 26, 42, 78, 42, 51, 83, 5, 73, 44, 43, 1, 87, 55, 3, 78, 90, 57, 29, 38, 96, 38, 66, 96, 12}
Returns: 47054
{"21283305926409595274625554603373774", "300654510742600122773376492202237821609181", "21110852330313828973395243886952455166058", "468474697532530", "591267376493989279655620811614383233", "0101904404773120294", "0121958361660384", "100416846416889224714830141092082490", "01300355061360474420368134304819026", "013017441331629099130497508012", "01310951179560154357053143586886", "01404255311582475379484", "014153929973584600545683871485", "101197003647574052189635", "1012641174792686780565119905985351961023233403235", "000597756", "1010058069472048179545020710906", "0010087451113", "0113406873403220721369941207466031963683965", "20030347091484406429794030872340", "1193481793", "2010609959478929958679121366018930893308545128664", "015069782867392798", "016748245519819246603334", "01200899679121036918", "1010103462875551899", "102818090874501483696195852847887801", "1257420122402737381976122461", "001013499881892745688", "01007774", "13188812", "21064777632974971661022912558029448219437857", "211074011738298544744741945", "00115530695750118263106256919219"}
{28, 4, 52, 4, 75, 96, 49, 20, 7, 56, 25, 29, 68, 44, 70, 96, 40, 33, 68, 34, 93, 68, 38, 2, 99, 72, 38, 57, 5, 83, 98, 39, 31, 72}
Returns: 46694
{"2278673", "010102224141975752265666607497", "010117451684934341905", "0110587359105024", "21343327768756556385545435717783923979", "10804505", "11443580379000687625505728", "20809617874658471912558148277413", "005581924568592", "010085195251448536878005682091"}
{83, 71, 96, 51, 63, 89, 19, 39, 38, 59}
Returns: 13350
{"001897913468659914799", "1161119313", "0103129039154553811", "100433167", "011336123812107788423226165938695197088", "1018532210", "02821038261781749687566731096186554257903870384"}
{69, 65, 92, 10, 40, 98, 48}
Returns: 9171
{"4111955831706687100567852076403353", "10022136430", "1143941928829678516100840260305300409879035759", "125571183885553981501450835238249632754108227692", "301240742936441938409850370", "3227300335024338323487636995", "3306117136292051", "40365", "331054872769796133789920483", "34527501474291266852", "0655739009964647064424697270957", "101012210669836073321179201085", "41015570791358089", "59550608922798371358230761843", "301009806009337886081997625189958181954857714419", "3311528046309079723398660995222778919760", "218296730400877272301492608", "41003912009544092216872447647156", "3000056446009600808829", "30001135108271137024222069895", "3001124838242208", "31008966583464", "311285359148902566125560025176902857129", "4110257507636751823682310901481", "3011878052862461242228891640078758128228437742", "310150630780"}
{37, 58, 52, 7, 32, 73, 56, 5, 11, 63, 52, 7, 99, 75, 88, 22, 2, 32, 55, 97, 96, 72, 31, 24, 68, 82}
Returns: 36515
{"000100629675565020109", "0001103139880655378592971931868175338768537108", "000010182710958293898934653797499540298012019", "0001018792358330176791", "026297100352355784122194272562411279740935049", "00001119178004542", "00001201312534127308982450147741826556048225384", "000111844903", "000012000066630725884509762", "0000100514213388874", "000020068588670070855553422775430210751", "0000201341836912368122942688659451375674", "0000381121162533575447254", "011881243668831471842314380111076418313356", "10059732730419958107769442892758299", "1018664559027476422394223627", "00002120340321414877716621", "11284738215392560124894093368378346836393", "2434825508252636924006115481", "613997611333787959919686487", "0000053", "00001200011446472776019397", "0000120012901810", "0000120033727640219428738", "359579498858389366429593123008897", "000013618176356685", "4297846458052880", "0000140945657931510495942096678971974672", "52628", "0000141050774980", "000012002711196980795137677417293158907386", "0010868623", "0011761621", "00001100415", "00001101173870478596418113168785605321193", "0000121012727342159022051575805968649", "0107464015288196946710893576497266919575046476004", "0000120001029271509154630916385544306832320"}
{95, 7, 36, 69, 71, 63, 93, 58, 49, 98, 98, 98, 90, 36, 43, 13, 43, 87, 27, 45, 62, 79, 77, 3, 57, 59, 8, 45, 77, 56, 82, 87, 70, 52, 88, 70, 42, 50}
Returns: 69381
{"01000179059843917322202399525072057051867051159891", "1001283812712279", "0300133111796", "101588509199252671621121645810849679751", "10004394950706724383412493340658015", "01100390441417741715272500495459676768595727081868", "03011546712639012324972603494347396264959686", "00526643025832666162337156672006658207154308059", "012439774808709789616643869489921519", "013000387244692293519833110730540409741637784", "1113166592986855037762249200144443985", "110140971670821221465324528761674866022", "1290933595932165533433212641710913703849", "010018815532130721631", "011113213271", "013001877", "267195409356774312403439493588242108188083", "0130144150302", "020007391003550454523649706350023962724796928442", "0131543389643030133279223739354376219689216169", "0200109853203861", "0101555912544552574630583738807065535885", "02001165362516200771", "014322796736494353277088728275437368499766879875", "0201072968704494823138137964", "020112804567155", "02021707310884101635351311302461710900", "0210005436241343825552", "021014970211284291", "021121489693269215374", "03000216", "031231544742058987569", "0473", "0100001158715443009134319753577878352269909", "0110192111978680204", "011103717384666177070823114", "021269029058502892667243556308563744856", "021001385565183"}
{89, 80, 20, 46, 3, 77, 94, 71, 27, 21, 46, 90, 83, 41, 79, 43, 32, 38, 73, 85, 22, 57, 34, 25, 49, 6, 55, 50, 21, 67, 16, 31, 19, 94, 95, 83, 24, 6}
Returns: 66667
{"002465769283362310959347283341937", "01106090684442964062078100687315945", "01110072459204383856540059265", "111350211841529551292607316203166305072767964158", "01067279915", "00040189", "00157822123031217076"}
{41, 20, 50, 88, 47, 67, 28}
Returns: 9755
{"21971805400259324197284581375082459145971437204", "010018465693261359168752373", "01012407306960895073225020672", "0215387372584879943713973596988900", "000794481743711974718662617729", "0220713286545847388042202", "0011096", "01101543734780", "0334986747127723566290344292553384524517341", "0203730898", "3057260856901673858323367997194", "001038088659495052985", "010003615864082214830405265385197367862", "110007227532324162299457750878051206569411", "11018332650765430552780644790", "110010523731", "12056480670898257", "0111055890060285726274129292", "0112044773629600163839336222033510055888583863215", "10084444069070795787086791014", "1225003512788303997672056680318", "31224519181", "01100013218927279420", "011119328584556139662023793406", "20155902405213300670556567248217346764906", "1010766597001616306445884213861700761623025", "0112176956658808369108955565793589892668", "01259070792508446", "11155297159590684", "1100115132", "12121625189810293076529160981604496660481042293672"}
{60, 29, 8, 82, 7, 12, 95, 98, 69, 26, 4, 93, 2, 34, 65, 19, 9, 73, 88, 22, 42, 87, 5, 12, 63, 51, 92, 35, 95, 26, 3}
Returns: 43173
{"000006144791837142687", "21188656422846333", "000163397436969439517368793954905", "2001146160658777299878", "001888", "152188777156653174145317083154717616368591997", "20003087513649363778", "2010746788804258631922443", "3154376734342744297746814181784713990359137", "0129542943318989789930581282545025338604190019"}
{34, 11, 31, 34, 46, 8, 64, 54, 72, 71}
Returns: 12764
{"301880803197966", "30201616682634712271713497435599787831424022605", "020004804537742234", "10120717301309848312582209844483", "3100184054173227335337650813404527426384411625104", "010141736602203369615", "121964363006142461621906", "021110746814650079878443", "13038431023503457608204868004370611", "310000619087438148544311425726", "31000131189299780463", "32000647951212638919674813803121740369077386882", "020216995161475280530472797129881843615682", "10121849072050994745047245399720174809649076125", "3200108693559387948246", "3200111472430977389627230686162", "320159954035552416517034592313795245809169216299", "321388886939667623816968317", "3118137772925065524887106", "322946", "340584103538657558406703", "34109078", "4557238923212886441122173701248382688734", "0007599197064806718736673677817230408", "011541094329", "1011097241534974322049365224", "0017", "020103769772620", "30059191399376086004757409149522697385836622739311", "3202998797132017835861408858122330997958306326", "337940046966841191829970834", "2623160227", "3411572213033992280", "10014680634726262422805774225765389110901798", "101056455541129746856178519240330796204780610", "002620868", "100034511353165914930883", "11960005", "0030064905557064429756", "310170523462764938865706204398548237984", "00314522455170628463", "0210852711192349528499578397452431"}
{56, 45, 77, 37, 19, 30, 65, 51, 72, 28, 95, 80, 54, 19, 97, 24, 71, 16, 29, 33, 90, 11, 50, 31, 49, 1, 40, 6, 26, 29, 63, 61, 50, 10, 52, 96, 75, 36, 7, 65, 71, 24}
Returns: 57018
{"0108673878520625070726275651113802030", "000116", "0020126854104757", "01114882056655155336782013302228784155", "0000021215357733560121", "0010360909918253648290323824759266951692363", "002169475016286087157744005390", "12031063687085768472729450159463532", "20037140280519212496702", "21423260", "0000152180743536401359870074079132150364124", "38632531934424941561320", "001163910689822676", "000100", "001268703600472645", "00200940407959990210775551", "002029657217767", "0013136", "00203391887155193123864118308084164844461106003106", "0039415949558291751876124450261"}
{97, 84, 59, 72, 45, 70, 96, 82, 99, 55, 85, 29, 78, 48, 7, 53, 81, 54, 40, 19}
Returns: 33948
{"00111000172425145277930173871749058", "01014726", "011153796885577664019374959748667", "11751088347274170997730944", "0011111559799728613701207211367338137388609116", "001200001", "001200123673957884530228158096222989267", "00120108964965", "001211720350663832477882869362162056231103846203", "0110269772889781142877867366638856916", "001223400446085404057161238068110277680966552", "0120228", "0100492572210726685888762657414", "0012011412890451601431917926201305633658920", "0121759026261313726693719291554102368610729736", "001347551833296842354010029216359128240", "011263", "00100110236710384", "0020468599689", "0122977721796970728", "020590250125779533467385674584738422275016651", "0216501927348627396896344678635611503863951622", "0010010234423", "00101015635939371521772713066", "001101571220414624362793505295468283027488671872", "0353455", "1010520277414324887517", "100099608285880648236890255827825561091", "101104286", "102094594245918598054343892228448165153", "102195093499523618076358159473495973", "2060795015687423438779286272041047", "00101100994037140703671", "2191770875462", "001000355539431573802268810615335620681", "00101008591", "00101101355902385766125889329177", "00101116305318948359204", "0011005", "0009940846717344770515844979", "1011101386533584932467583004177306557707", "2258346546239729321872794857409250", "0010011187944577076619601520790948502177828764", "0010265119209006"}
{97, 2, 4, 55, 21, 59, 54, 18, 84, 9, 97, 12, 92, 93, 11, 61, 62, 11, 35, 66, 7, 70, 41, 42, 7, 3, 4, 3, 87, 67, 57, 49, 75, 36, 41, 99, 6, 15, 45, 70, 94, 39, 13, 48}
Returns: 64289
{"020197417805363981894581088407337253096", "0100010877873200636649084683493831", "03003877032156474711", "0202736071560474549233265592021410443182", "0001699862319010337930", "021312757069738018481771638523505417992675", "010001123422280408566606409305302492480431261531", "0101100545051990226100838653", "01011014265572200030631", "0110189997767803330913450180242880", "022739926018678903", "0020786802489421296951665278233761975312987737611", "01011193229723047749618", "0310334707519644627", "0100001669693669081521124276", "0012360744811663316902525746", "0100189141527585471867779", "01010173174756447288301804072551438695216268929", "011009350568739075058", "011159086493", "2486", "012194589520982442824160008235", "0200003986964251276873658351057105556286", "020001035805718395494453114147015906086651269", "1400117346", "00006140334285840106049580262421928415", "020001116123039631515967", "02001586378613857", "010000018177046028478311264163461494092271083", "0231481309448"}
{54, 35, 18, 77, 55, 35, 51, 56, 3, 65, 56, 28, 75, 30, 78, 51, 5, 13, 2, 69, 98, 30, 24, 51, 99, 1, 84, 72, 97, 41}
Returns: 43439
{"861349164916048979834916"}
{10}
Returns: 240
{"01100403440177729541033034373585317282111094", "012216580340323952002", "00021374274667454534651913865084312184992597503", "1002608109342", "1200117569545675245497028724451061522367112", "121780031654970389273548824710470634969007", "120126547608090453007291421981920723432007", "000016271615841826651430593174484", "000101725103649102371", "122462560288758834094", "0102179", "0110111399", "0112470410544492604659265440716112401493216589", "101008834891929582922036321960688411092642923918", "101012925813339474", "1372002691257", "1134058", "1010245880516234828116054921582275429810843437406", "101103768245536379148888337675601202", "101207836", "00011163755610578582489708789123067682474735169", "101300294097292531658542862464740046236030928", "011172326121053701169784", "0204644506611", "03636660302044", "00000048976888121614236402298380899642057293", "1013011735880378520753545852555651", "021046626397188398915", "0211907", "101114023452165168047124278690381840742", "1012104475152837485608056309688", "1013150319481357544176938850371816", "10275873", "10338272787010642", "11030683189401327070813219489271703010054933792", "1011272719", "0000019", "1049588344236599657551865942934", "111684330305668478255600308808081521445045821317", "0002002021814546867513400", "1121594278", "12000717560715461068684383409998490880313017413", "000100291170", "00120741392647937874", "276690499194514317706"}
{8, 21, 77, 100, 72, 89, 98, 59, 48, 22, 50, 25, 10, 34, 28, 96, 78, 62, 81, 49, 52, 49, 29, 6, 17, 82, 100, 42, 74, 8, 55, 87, 40, 79, 41, 40, 84, 48, 67, 14, 57, 6, 52, 59, 68}
Returns: 70058
{"10116616701650158842590579869150", "10100181014563529513924863007291", "1012062118195333270048489429193562363717203352", "1010254900274278561878730615519859788803474690", "000024861936267010308666", "000100010017901016236", "10000104736303529757621610286555", "01127642537573065", "10100200526329222543164862478630", "10299509205056970122651375575055", "1031065503487574119204807235", "10100210513165442", "10121638175632979", "10409461774486670625300916295601074", "10000000417013683455208", "100017820810203132794", "100002473124003123830839281598992036429072", "110396066067067", "127987741302412706620359583", "103116728160441183584429605508827808905301867", "000000006", "1000000152574073213481978054728589779", "10002482656591798300022507568201866534491", "00000017022966717588856535823196463035260416", "1000387709357425481910128030", "10100201832317850918501336453", "10306855985890503529980315706481042415965288439876", "0014998716918522780199", "1041586595", "000001260672930204155825299847578", "0000104216781213620217878045032118746484559", "1000001077168973938148452778906607805327755825", "1000011216197383607", "101002113", "101002209721836770", "101002210946458052513188397446713855", "10101100118369756273904836414980", "00011194649456834620496992601664706051922713614286", "00012658074997672745412669036334", "101011014", "1000001105498016167170960267523861", "1001814523319585480297948798750", "1010111099586122945003671701134088255963948518", "10100001719779178028406323310631951465773111039", "1010101433518", "10100013131029737254762560481820159729102984338279"}
{15, 54, 91, 65, 71, 40, 37, 11, 67, 32, 72, 75, 8, 50, 73, 37, 81, 29, 100, 55, 25, 83, 49, 44, 93, 80, 74, 79, 42, 33, 59, 52, 30, 70, 75, 76, 60, 94, 63, 5, 77, 54, 49, 39, 50, 30}
Returns: 89317
{"0014587287565", "019645025636564907644470512121640766412936", "2953700328290657686675439939670623", "165275674393"}
{98, 73, 66, 90}
Returns: 7681
{"155012548450982154302883293901327", "03020036281068193691020561553473682864682", "03190892762947957191", "019020971916816400692545775277", "00724445", "024370158402035058002905"}
{71, 81, 27, 8, 51, 100}
Returns: 9578
{"03285045437097497560401739525516", "100085704694", "1011781340280401251433271062577679422857", "24187652272666890872056153294094820797466645576", "00185520936004750598447547576987097431943844", "01154081910621955568105655425716274146689", "100160733452537595", "10020012428581538803576410438", "1010051411083405998", "12793608134418424866655741463407723562704", "020656482977980713", "101019236930046553639641969346723961675176837", "110", "102815543613430520577357367652863802", "00053617972212"}
{56, 72, 27, 95, 69, 72, 26, 43, 60, 81, 7, 43, 18, 48, 48}
Returns: 26042
{"45514337832686396735", "1005147590515", "110005471529911329507600388189598488393678", "00023", "11001041737344744421677942", "1100294302793761143507", "1101369114367321", "2113410891789713800591570511796619", "2007216548126466878140", "24101258075921855932713907386314110785497380084", "121003060570267616347651935", "2401985099467850439001414720584569945836508971227", "111039702770041945834250937538514736192", "120388318547952982733347895004794387", "24004165629788006098", "24114988487675184613967688670465977031128577860162", "001606329973252807286779195591520484961573155401", "013426963062059272348836017480378", "1211577002216170193756580346259699004909400911179", "20101", "22732335951208949616970282355905338793285866634404", "1014987659270656102", "230783350334285", "231867170639292692252207", "2106454403009222778000535812765556008023763332254", "24246020503802094843845474", "3698919899599770458409936525927"}
{84, 14, 39, 13, 42, 86, 67, 2, 98, 89, 82, 69, 30, 44, 63, 11, 30, 79, 5, 74, 84, 37, 33, 20, 11, 19, 8}
Returns: 38491
{"210107492744583048200382709515994663906216", "30011000333405255335765381176556562980955929769918", "300110119843071698704018", "2000017696562585561068871", "21188301258845782230871170338009040", "30106731227457476691052846829029", "000018", "300111112638992226", "30111576106101643389617296918491860581038", "3112907741895349", "3020481", "000028223615907713962994371535430", "210112713519173787813998539362010384131", "00018765056448036560399019214797838403", "00113170", "22008137895835649103289", "220161043118019073289901431268194438", "23221069054315315557894", "2411598061350899", "30110392451742747297819", "40093520411934253635", "4010948396809501362011027919492949", "41027848184242578381807953129972282613885710", "3021094348151582242", "411069089965059998992837477451199706632", "4111827953457269714216982546522430632636", "2000001817778065183355244455444478828", "2001233988365553654065640683591343236398", "5321006121010503791090", "000005810291438", "240159095881777783096606956098", "221824240561660", "002002830479709505950128101", "1061091182941135909", "20001759415199169168703829858326802", "300000839135", "20002059471455374220993191144488", "0020156144349848630393397831881544492", "01012651945332644127998202741785199", "300106554483144878", "20002178683176431949", "201033539806706641", "2011017491967", "002149036380458307510795672799570", "0113797891858694838936645", "2020375479014737507869197664809714202053", "210044815736362980556387381899330567006348", "3000141", "1176719186185013814865594889358183965172687"}
{58, 22, 98, 74, 1, 68, 66, 17, 9, 40, 56, 27, 6, 34, 20, 43, 57, 29, 64, 82, 59, 59, 18, 20, 78, 55, 72, 4, 28, 50, 60, 80, 31, 44, 87, 86, 64, 82, 100, 1, 35, 84, 63, 66, 70, 100, 100, 59, 71}
Returns: 76281
{"1165817423915", "009440954046009239820131887685587", "0117085477827651343281711031062862015488341"}
{62, 29, 8}
Returns: 2194
{"259", "1619", "03978087362227411706590475978"}
{17, 94, 53}
Returns: 2005
{"000192147556065356274345679675731", "1000338311285579006487332466196705", "10010064329419090439950813234834", "100101074416214986489", "1012757100034559204475", "110895090891529887655055260", "13905757", "11100723698410328842015453", "102040126726", "31108277876", "00115", "31204071519", "112780881", "00002702059183169121", "0021272346186481514", "010430409429045074374048337831774712815064", "0113881128184728", "1001011805949622234", "11115743588503685278848343370856397350142408", "310005972639146359117852892138154", "1205202906", "10011895951204563848598123944493701716188672", "1214783420612944317051092574588022", "14550", "31001891277318994087150809789568851", "111017993", "0000063910", "311125601915731098044407478208", "320725175656452034136112075186", "00001690271975", "3101102383097652379", "001044704223272254335965810866640203684022222555", "200984850770241532916632642178507", "303725623756708371"}
{85, 4, 69, 70, 94, 6, 43, 26, 22, 33, 1, 92, 98, 84, 40, 2, 23, 27, 31, 39, 3, 91, 97, 29, 48, 10, 65, 60, 66, 56, 51, 23, 44, 9}
Returns: 40911
{"0100000745947215", "00001651063801474300302451194306635684411414599", "0112164903927", "002483883380", "1100836363973310305285082405568719561", "1101286593719932037509412892055924133491", "0000257204937334058208889", "11128480703223084720413247184123043920684", "120881", "000009948026209240", "10011551538382253551025743732110445935678", "0010056962268711784281604882215026464513079", "01017922539375494908170746308985779436832648589883", "01001171513614504", "0001079117935", "1212655540", "00101023217627802280668598247212383313", "01100", "0001119022954770125583268128037558", "01120149971361425004871291602169294661", "029526286", "100022105287592406911401123657", "1014894469357201743530915320066658081447", "00113937161989", "011182121", "0121554979457372574305"}
{75, 99, 23, 67, 62, 46, 33, 61, 17, 3, 97, 45, 26, 84, 5, 96, 4, 3, 89, 75, 15, 79, 55, 66, 36, 26}
Returns: 40109
{"01018125349570", "10108", "010259823007870787298180139573776", "01124711999056556110823273456453904465306657175180", "112016870953136137210491827395298665750158356", "1100212", "12643855248", "1301210006092518287135162085577", "1310009592235510987519666192480714130891855582", "1310018226790869651", "1110005813174165", "11111057748", "1310191049066058446748209391304094", "113068174115858786386022525265152430", "13003693152358939977441448805633707619968891691658", "1311005796395161299531526896067232192225806", "1311013120", "1311154433837102565948594", "11111170028856998278652215", "00074442320158866092578688755705", "100001681891379560214794582322973707587304985", "20015027313678743", "112172249789", "20115218089928647165897", "210355", "11110628000331661545539488980", "1100183742439", "001104365100383935570025224924052", "010005", "110020076653589670159604865029621138559", "11000320255366676544405848440645088", "0100107380275718315806", "112239288628676731", "1145010051610414729148506", "3009036311071380286870318443898105385050207", "100158840152205767645", "11002014", "111001372466753158648", "11014366403761142435508155732441992613572433", "2010820362484428645979572061722673769", "1011323263187858182478206416250099078789", "31105583077036503694440402", "1102030632662", "11101034", "3104802056595367601744595007605285619085866565453", "115039", "1151019998717081833472019545224101096911", "1151157180096174300793020"}
{23, 87, 3, 43, 79, 49, 25, 27, 23, 3, 59, 61, 53, 81, 20, 80, 83, 41, 34, 6, 41, 7, 86, 6, 61, 88, 33, 36, 41, 33, 71, 62, 67, 69, 85, 3, 59, 90, 84, 22, 89, 16, 73, 81, 8, 29, 26, 80}
Returns: 63514
{"00083532130700439473835622652", "0102565695688157519", "0229898", "0110904383435195504548062", "011113291934795742297911019621", "10278315830460687610061312912787122222407", "0349597751399351713604979934009461987", "1153092992509509945644992986230948116114880", "0019005369928138305102487"}
{30, 33, 9, 31, 99, 48, 57, 47, 3}
Returns: 12374
{"05605", "11485029096772291375", "105477247655301329435"}
{59, 90, 71}
Returns: 3655
{"00212743510575343343173469575575117120179519", "0022012060970567988969311", "01008406135739212595153355024758436729", "00230969537005647904684199106783242692705", "01015186086729", "00359327691204178", "101048817394184331162520516322", "200001881592749156771946784157485137103843293207", "10000115943530731824238314337068312492", "200016896510301903", "2001614198877662744200254910922773429109", "2016307438334848435219353471630399362951", "0010131160707826908260192", "302", "1000001300484294512435600", "3113220", "49174304603938939505349865829400351681", "0012055646740500425311706287582943347", "1000010664", "10001408265150995107477408204888375135083960", "1001514429039074476263661", "1000314610976368307839384884402327756", "002000176738459236924205577343296070746084", "0112254", "1011859988356768198175473", "10225185847130905478893456", "1012456314601067810989639794223939747603212641", "0000004389969655486456665489", "00201308436032688157087775469180156734", "1000243987072718177289036529471724791477454427041", "10307293903", "103101019138560013207386160296", "11109420018882973425114525999274835639", "10320861047155643829197770281784123186958661630", "11080931451087853258390238881152553519", "2000004492964781406232110177695051621989", "218905678248739574245880054073457027436437", "00000138813584364768960733274410197938791231175", "10321208973502248519843314610568527991", "1205709489872404317", "104092445562", "000016385977", "00010124988", "10416870570323457124664567083069", "0011918", "002028176771966788915"}
{28, 62, 1, 47, 51, 58, 30, 11, 78, 46, 61, 64, 8, 58, 5, 80, 80, 36, 25, 20, 68, 58, 27, 55, 15, 51, 3, 15, 23, 82, 5, 4, 40, 96, 100, 19, 47, 80, 68, 34, 75, 22, 2, 59, 85, 92}
Returns: 68242
{"204350018724635024072218591043224800379182", "210000387283", "2030152976966358", "203195413107370613201652842879598094593364", "030009059575168236021726798279808", "0316369110777", "045776632971872706915374698995535086", "2100010588761187491645935062796429174174690856", "21000119406157284770", "2100172490896400632187082195966732900", "010004826", "21016005670065", "17721533278114285311643694798431006502347155", "211843072694306467183459787870884397592", "302330363709434863", "3183085138399292939038", "00290374", "010131777", "0100101230401670100892296012596", "01029004217849648117277168896249007721", "011948131554694402071850668616192801911195994086", "0216759550791851980953", "20072066077319049475172305187", "2010491289331939281608829057880230615", "2011670387949268689148220395", "0100113912219", "20200124368983270865137531181595136971395136282897", "203002370954019"}
{51, 28, 80, 23, 91, 29, 43, 97, 72, 90, 25, 34, 99, 77, 31, 100, 71, 45, 22, 16, 4, 69, 11, 66, 54, 11, 91, 66}
Returns: 46686
{"2026823043818921854857871663", "300015072625", "2100410433633592158", "5139820584800595491643189600544852958650", "20017602229451220223131137118", "30013869", "638168756892469634433588805", "30101953800307014530661834187902284684905676", "21111307", "21121744457106385364447960768084161112550628", "1001392477462091418970568", "3143596345", "101273276623836861821756600", "2110454093165444271039862356", "0002267447111515898052287434", "10296904519205112287697027", "20004083191", "21120009827646142102458189263", "2124987751047395839", "2242258", "11963963390772444661030538696228", "00143956", "20131225176037005369014016711059967089087175447", "3011267274904302", "010326648618580484811010446367756614898468584622", "3010001924107238894103467782422705297391973074073", "025245966135690308435117089759", "3287580424161878299731544546263681588250321", "41960033547708508879", "01194"}
{26, 92, 56, 65, 97, 55, 61, 25, 76, 8, 77, 32, 41, 19, 68, 88, 87, 100, 32, 75, 30, 21, 84, 5, 26, 46, 97, 78, 68, 26}
Returns: 44256
{"15326620696964646429585177660355429423691813086", "260824880339464995608", "02797593937496260281", "00049162773357", "0191"}
{44, 4, 88, 77, 60}
Returns: 5308
{"11492689685390660842549940815594890186", "1008", "08166296362698511588248199234012543465"}
{60, 12, 75}
Returns: 5274
{"0101288596546", "45541076795207011406461889424816380334268261701", "002009039229999", "011964661807856617504", "0204142382596697299431527894014", "002178597310710994750062", "030544040646", "021427008737691041607048740555145850189585", "0001032349011715289964863113939187015993886099978", "0311990625791127074062919116469682966818103203124", "0001101723127", "0001117985390859716920263873965467507111", "303273196292673", "31156124", "0000978982787564805883006", "0124957065491979192728206758673560510106", "010032109965446899199084", "00113840513812750039928", "11921242848157852918373215451634", "216682645041366053495188630438477489087"}
{38, 6, 9, 63, 80, 94, 48, 20, 13, 80, 51, 79, 84, 65, 3, 73, 61, 95, 55, 84}
Returns: 32064
{"001010180640721091518736855749", "00202745299961109", "004025258702015110478", "0030011163340447849882617760504034", "1051778763682893801219", "000201918196797628", "0002124220051613532826999697477", "000223960120087636055123732", "00300259008273712581749095550866075570713", "0030112699022974985601933595021480881487468720", "0030263867821399614", "003105465396798265546894104975680636", "0031124490351", "0010002963128449607543360906158648036", "00417544687341", "111322940609863945914930792982214", "120740679390", "123354021336042299769", "133092048664", "000037715601623343922703962607739805423318", "00100100175362281610828", "016305279131", "001102178602705165957357654196317242925", "0208868302117", "02159752937536119199900026331872527486282", "030727938226250081011649435145641017600", "03121431840185297867814676582304483304992", "122701948368403232853636807812630620546745", "00018102361366529780620636876640", "0438814670025089006255807062137", "0503216000", "208172142074357999244957", "00100101353107382226669", "21872521", "00101143951927921557620575406209", "00102877", "0030009340358973427259660511962989800536682456470", "1214710", "000200264727041201487072", "003001044239543077897999324479628437945293299004", "001001158243", "0011126448021815993749981519661483176569482217"}
{69, 22, 40, 70, 56, 14, 63, 29, 40, 32, 79, 68, 30, 5, 96, 84, 7, 38, 78, 7, 15, 75, 49, 58, 46, 14, 96, 61, 13, 42, 25, 15, 28, 19, 51, 65, 12, 86, 1, 95, 87, 95}
Returns: 59864
{"4844203436764472069", "3145349683814763265571624114090531", "20017118039592715303368033125850843706044", "20028738025458747", "2010078995476", "0000407708597725449658179382242289437919", "100539728491640942522278229271152305605", "201017650", "1010002120750147383501503", "201115145955225707480859004199291445069269422", "1010132221761439695000", "2023825484631584844511361", "20382302383726465701168157087878582107739470605823", "000128812447", "1010232704789248288783669077129", "00110", "11802468560911618802989361534421674215928887272", "21004176745308760219041584", "00212694901465441915048152900914304165568429594", "21011808270", "2116807647630580725", "002010516689943514813", "1011966379278392047940981510149", "20007442787543614556405421277929731743451203996", "00337369301647383344", "220627948787206533", "2215079313383271721727715090", "01661347123345789", "3073818217"}
{88, 88, 84, 99, 31, 64, 30, 78, 47, 34, 82, 39, 69, 78, 3, 94, 75, 39, 81, 32, 16, 60, 21, 17, 57, 94, 47, 71, 66}
Returns: 45406
{"0020211007480518175377584030870538407", "00202110163287155599413485023051620155421675889", "00202111560987111947877882364429228810548486", "0000015884625448509643283316313", "002006212655629897644408", "0000123672173639577608073897648812", "002022079650166036383124795", "00010147193817829753277654462540089595", "00202314548807760619880937383", "0100108159926984", "0020367350502", "011170715443255188454368404560097594099", "00010060797682865243634741888691", "010110437098597703", "0253518763373837484429341051", "0001100062439144293872766372", "00110143520168", "000110012764", "002010004473599568113626", "002012007842771400183220652929775200", "002012014294494108420593878616120", "001110580522945139426638047701757776", "00202011302858191363409808", "00214955648824803178631185933960427753455", "001100766617", "01010072350705374369955", "002011008387335128140726694844", "000110143025857948692140427930410559338501", "00127783", "03141140", "000111044091063", "0001111258568", "1981386858792177422700", "0002530600076514665575456", "2773543611484", "0001122446892987751675938882246693012171526740", "001085937622058269083162859399956", "00035651360563869258063233970", "00110210027362", "001341007971429597300", "002010107146991284487609496947485341106", "002010019170549093546420120301734479372678411503", "000000670507047804697106504", "00201101225514097415929242581415627", "0020111957470792834446565823756024", "002011213821475593682809047", "0100004125395383587139067", "0100115662363610191524976226", "00201214866647796084333722201468", "00202100602519724887014521991"}
{71, 91, 70, 6, 97, 46, 82, 32, 37, 6, 84, 28, 65, 72, 100, 80, 1, 96, 4, 76, 45, 99, 82, 70, 97, 91, 50, 90, 65, 76, 97, 80, 27, 14, 5, 12, 55, 66, 43, 43, 74, 9, 1, 73, 25, 13, 3, 40, 83, 45}
Returns: 83868
{"0001131747912174269237617910901140889936252496512", "40030232743970440403729629964", "4010436322627866080471510274361237060484676037659", "1101187046778026683870076", "419993077", "001086010286275990", "000002638210305694991788448951846", "11000206258176315242288154740494531679175", "11168138127223210602771121", "200854008444882024901632700916838576385715831", "110019226404022873963319077559748468", "001157992227272104611177190434001355927377929", "00228673940", "00001649835795544885126296450305648508491598", "0037478355504", "0103764409636", "011380818", "108479581073594590820009633324516075", "11010043704085749638890757723836938049956", "20199309776934918075773", "21451547252375248025182", "37886429050273371445328630923446779517201804786", "1101013839029114140150764228227342080478108048", "00010274483822310680677"}
{74, 64, 81, 7, 48, 59, 83, 66, 95, 69, 56, 20, 67, 96, 31, 44, 100, 89, 8, 33, 49, 68, 56, 96}
Returns: 47274
{ "012", "1234", "125533", "1223", "1123" }
{ 4, 89, 9, 2, 9 }
Returns: 972