Connection Status:
Competition Arena > InfiniteSoup
SRM 286 · 2006-01-30 · by ged · Brute Force, Greedy, Search
Class Name: InfiniteSoup
Return Type: int[]
Method Name: countRays
Arg Types: (vector<string>, vector<string>, int)
Problem Statement

Problem Statement

Integer coordinates in a two-dimensional plane are assigned letters from a grid g as follows: point (x,y) is assigned g[y%R][x%C], where R and C are the number of rows and columns in g, respectively. The grid g is given as a String[], where each element is a single row, and g[i][j] is the jth character of the ith element (both 0-indexed).

Consider all rays that originate at (0,0) and move outward, crossing integer coordinates where both x and y are greater than or equal to zero. Each ray spells out an infinite sequence of letters - the letters assigned to each coordinate crossed by the ray, in the order they are crossed.

You are given a list of words. You must return the number of rays that contain each of the given words. A ray contains a word if the word is a substring of the infinite letter sequence spelled out by the ray. Only consider rays that intersect at least one integer coordinate (x,y) such that both 0<=x<=k and 0<=y<=k, where k is given as a parameter. In the int[] returned, the ith position represents the number of the described rays that contains ith word given in words.

Constraints

  • g will contain between 1 and 35 elements, inclusive.
  • Each element of g will contain between 1 and 35 lowercase ('a'-'z') letters, inclusive.
  • All elements of g will contain the same number of characters.
  • words will contain between 1 and 25 elements, inclusive.
  • Each element of words will have between 1 and 50 lowercase ('a'-'z') letters, inclusive.
  • k will be between 1 and 200, inclusive.
Examples
0)
{"abc","def","ghi"}
{"abc"}
2
Returns: {1 }

With k=2, the only five possible possible rays spell "abcabc...", "afhafh...", "aeiaei...", "ahfahf..." and "adgadg...".

1)
{"abc","def","ghi"}
{"abc"}
3
Returns: {2 }
2)
{"abc","def","ghi"}
{"abc"}
4
Returns: {3 }
3)
{"aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa","aaaaaaaaaaaaaaaaaaaaaaaaa"}
{"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaad",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaae",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaai",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaj",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaam",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaan",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaao",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaap",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaq",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaat",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaau",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaav",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaax",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaay",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz"}
200
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
4)
{"a"}
{"a"}
1
Returns: {3 }

This case will kill solutions: k=1

5)
{"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa"}
{"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaad",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaae",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaai",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaj",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaam",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaan",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaao",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaap",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaq",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaat",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaau",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaav",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaax",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaay",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz"}
200
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

grid 19x23

6)
{"phqghumeay","lnlfdxfirc","vscxggbwkf","nqduxwfnfo","zvsrtkjpre","pggxrpnrvy","stmwcysyyc","qpevikeffm","znimkkasvw","srenzkycxf"}
{"tlsgypsfadpooefxzbcoejuvpvaboygpoeylfpbnpljvrvipya","yehwqnqrqpmxujjloovaowuxwhmsncbxcoksfzkvatxdknlyjy","fixjswnkkufnuxxzrzbmnmgqooketlyhnkoaugzqrcddiuteio","wayyzpvscmpsajlfvgubfaaovlzylntrkdcpwsrtesjwhdizco","zcnfwlqijtvdwvxhrcbldvgylwgbusbmborxtlhcsmpxohgmgn","eufdxotogbgxpeyanfetcukepzshkljugggekjdqzjenpevqgx","epjsrdzjazujllchhbfqmkimwzobiwybxduunfsksrsrtekmqd","yzjeeuhmsrqcozijipfioneeddpszrnavymmtatbdzqsoemuvn","ppsuacbazuxmhecthlegrpunkdmbppweqtgjoparmowzdqyoxy","jbbhawdydcprjbxphoohpkwqyuhrqzhnbnfuvqnqqlrzjpxiog","liexdzuzosrkrusvojbrzmwzpowkjilefraamdigpnpuuhgxpq","jwjmwaxxmnsnhhlqqrzudltfzotcjtnzxuglsdsmzcnockvfaj","rmxothowkbjzwucwljfrimpmyhchzriwkbarxbgfcbceyhjugi","wtbvtrehbbcpxifbxvfbcgkcfqckcotzgkubmjrmbsztsshfro","fwsjrxjhguzyupzwweiqurpixiqflduuveoowqcudhnefnjhai","uczfskuiduburiswtbrecuykabfcvkdzeztoidukuhjzefczzz","fkqdpqzikfobucdhthxdjgkjelrlpaxamceroswitdptpcclif","eljytihrcqaybnefxnxvgzedyyhngycdrudmphmeckotrwospo","ghfozqvlqfxwwkmfxdyygmdcaszsgovsodkjghcwmbmxrmhuyf","qgajqkcklznayxqkqoyzwmyubzazcpkhktkydzivcuypurfmbi","gekyrgzvxdhpoamvafyrarxsvkhtqdihersigbhzjzujxmmysp","araewkegjccvhhrjvbjtsqdjootgpknfpfycgfieowqrwwwpzs","metogepspxnvjiupalyynmkmnuvklhsecdwracgfmzkgipdfod","jmjqwiqpuoqhimvfvuzwyvijgfullkjduhsjafbtlkmfqrmyjf","nhhssqctydteamdcjbprhtnegyiwxgcjwlgrsmeaearwtvjsjb"}
200
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

10x10, 25x50

7)
{"phqghumeaylnlfdxfircvscxg","gbwkfnqduxwfnfozvsrtkjpre","pggxrpnrvystmwcysyycqpevi","keffmznimkkasvwsrenzkycxf","xtlsgypsfadpooefxzbcoejuv","pvaboygpoeylfpbnpljvrvipy","amyehwqnqrqpmxujjloovaowu","xwhmsncbxcoksfzkvatxdknly","jyhfixjswnkkufnuxxzrzbmnm","gqooketlyhnkoaugzqrcddiut","eiojwayyzpvscmpsajlfvgubf","aaovlzylntrkdcpwsrtesjwhd","izcobzcnfwlqijtvdwvxhrcbl","dvgylwgbusbmborxtlhcsmpxo","hgmgnkeufdxotogbgxpeyanfe","tcukepzshkljugggekjdqzjen","pevqgxiepjsrdzjazujllchhb","fqmkimwzobiwybxduunfsksrs","rtekmqdcyzjeeuhmsrqcoziji","pfioneeddpszrnavymmtatbdz","qsoemuvnpppsuacbazuxmhect","hlegrpunkdmbppweqtgjoparm","owzdqyoxytjbbhawdydcprjbx","phoohpkwqyuhrqzhnbnfuvqnq","qlrzjpxiogvliexdzuzosrkru"}
{"aybcnpdbjfrlwaozeegmlpmjzaybcnpdbjfrlwaozeegmlpmjz","lkepajventqjurvydkeyulpvdlkepajventqjurvydkeyulpvd","zjwpxrkljddlflpujnohoiizjzjwpxrkljddlflpujnohoiizj","hwdvxxzbygsafdnmjvkbuegwshwdvxxzbygsafdnmjvkbuegws","jjieckowxrwfcgqhjsljjexdkjjieckowxrwfcgqhjsljjexdk","xxyrncrlhjvtszgfjxwkddinnxxyrncrlhjvtszgfjxwkddinn","ssbdvpsooxycoaettolnvtddvssbdvpsooxycoaettolnvtddv","ekpcdhajkpmxxsujtzrwxekqyekpcdhajkpmxxsujtzrwxekqy","dzgvcooapudsgqhmlosknjedtdzgvcooapudsgqhmlosknjedt","brsntwejvzdapfepnkhtgyzylbrsntwejvzdapfepnkhtgyzyl","amoezlyrtneijjtpjuhhedujkamoezlyrtneijjtpjuhhedujk","pfvincuujxqxnbtsutuplnlgcpfvincuujxqxnbtsutuplnlgc","fxpepscpsueqjoaqlxpjycjezfxpepscpsueqjoaqlxpjycjez","yjsfqmrjlidhvrnjpmmoiaepiyjsfqmrjlidhvrnjpmmoiaepi","lsrgydnhbryakucpolpjejqhalsrgydnhbryakucpolpjejqha","fceamohvqoegoolgzyurhmwoifceamohvqoegoolgzyurhmwoi","ujakkxoytomfbpqkjcgfbeblhujakkxoytomfbpqkjcgfbeblh","yvfxrtnnxqjprxahrrbltpgygyvfxrtnnxqjprxahrrbltpgyg","glvsivzydysoeuqhkhdqzptvuglvsivzydysoeuqhkhdqzptvu","fytldybjaaqvhozwptdfcpydsfytldybjaaqvhozwptdfcpyds","ceriecerieceriecerieceriecerieceriecerieceriecerie","gamiqzqhulyqmqodccjkofynmgamiqzqhulyqmqodccjkofynm","ufbwmpyasqnusnzoerinsiussufbwmpyasqnusnzoerinsiuss","vdinherqpnuwbohywlhzgtukovdinherqpnuwbohywlhzgtuko","rpbsotmrtuocxuooqzraiinlqrpbsotmrtuocxuooqzraiinlq"}
200
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42, 0, 0, 0, 0, 0 }

25x25, 50x50-50, found

8)
{"ktrffaclvgrzkkldacl","lteojomonxrqyjzginr","nnzwacxxaedrwudxzrf","usewjtboxvynfhkstce","naumnddxfdmvzcautdc","ckxaaydzsxttobbgqng","vvpjgojoglmkxgbfcpy","pckqchbddzwrxbzmqrl","xvobtwhxginfgfrcclm","znmjugwwbsqfcihubsj","ollmsqsghmcphelsotf","lbgsfnpcuzsrupchynv","zhcpqugriwniqxdfjpw","pxfblkpnpeelfjmtkuq","pzomwnlmbupmktlptnd","mpdsydsgvfpenemwbor","ifsuqhceskmkhssmvno","nwafxwhgbibabvqopqf","oviussqfqwehtxdzujt","lntxmrjxxwtlggkytbi","olydnilqadojskkvfxa","hhjmbocljarintdwcld","vdxropbyjzwyyojuoth"}
{"wwqsgcsnhwxeobuidixaecjuukv","lmdclhrzbbakdzljdkkdqsmlmdclhrzbbakdz","cxvmuwdsxwutvhocedgnyqsdwsjifwlhss","scwgiwywdldwsxclozzgnmbkljlhzdewtdrofegt","tkndnfmtjobjdwddtwvlcscaorofoulw","hacqtiwedhygtdlgsdqcbkwtzmfmzofczoj","vphkhgxdgxhwblgcjhpeojidbleoxu","htcppvmdnvxajnkdoctgnscwlrf","ukznsamezxfnfztqdgsqvgqpbrkofcdieodxx","pgxrtepcswsplladvpjnyqsjfdt","kmjwhpjqzjlndffatrhxvbupogdlxx","mrosmozgsqabyxbtutkmfcvgntmbdlffofkp","ojjacuflyxmbfangtsqwqsnojjacuflyx","pkxomfalhtxjjhyvowtsubbdlwqescfqfcsok","bopznbauspgjlnzflmgkcmdpk","uhjbvvjljnlbhbsxqerbqbanrpqbdszg","duclsbwjuxykkbpcrwokwqgtbqchwzur","ucpqvtbttzkijayoocbfctqucpqvtbt","ofxtladbxqnpfqjoeoorjujrxw","xczwuowzvefnwlcgxdygsmsqdrhvdpuoblaipr","ioznmapasplfhaiykmvjalothmyponxsrart","pzbtqfshnigmprahzxdgdflkhsftbsw","laopbwfortvkhbsmjcghymqalvv"}
200
Returns: {56, 0, 61, 62, 55, 54, 60, 58, 55, 47, 50, 60, 0, 55, 51, 54, 51, 0, 60, 57, 54, 59, 62 }

19x23, 50x40-47, found

9)
{"phqghumeaylnlfdxfircvscxg","gbwkfnqduxwfnfozvsrtkjpre","pggxrpnrvystmwcysyycqpevi","keffmznimkkasvwsrenzkycxf","xtlsgypsfadpooefxzbcoejuv","pvaboygpoeylfpbnpljvrvipy","amyehwqnqrqpmxujjloovaowu","xwhmsncbxcoksfzkvatxdknly","jyhfixjswnkkufnuxxzrzbmnm","gqooketlyhnkoaugzqrcddiut","eiojwayyzpvscmpsajlfvgubf","aaovlzylntrkdcpwsrtesjwhd","izcobzcnfwlqijtvdwvxhrcbl","dvgylwgbusbmborxtlhcsmpxo","hgmgnkeufdxotogbgxpeyanfe","tcukepzshkljugggekjdqzjen","pevqgxiepjsrdzjazujllchhb","fqmkimwzobiwybxduunfsksrs","rtekmqdcyzjeeuhmsrqcoziji","pfioneeddpszrnavymmtatbdz","qsoemuvnpppsuacbazuxmhect","hlegrpunkdmbppweqtgjoparm","owzdqyoxytjbbhawdydcprjbx","phoohpkwqyuhrqzhnbnfuvqnq","qlrzjpxiogvliexdzuzosrkru"}
{"ojb","y","kji","dlk","i","npu","gxp","jw","dz","s","x","pfv","ggx","fl","dc","oc","faj","xj","x","cer","c","hc","uav","si","p"}
199
Returns: {0, 16207, 0, 41, 10483, 82, 121, 291, 574, 16228, 18621, 125, 0, 881, 323, 574, 0, 890, 18621, 80, 11375, 327, 83, 478, 24305 }

25x25, 25x1-3

10)
{"phqghumeaylnlfdxfir","cvscxggbwkfnqduxwfn","fozvsrtkjprepggxrpn","rvystmwcysyycqpevik","effmznimkkasvwsrenz","kycxfxtlsgypsfadpoo","efxzbcoejuvpvaboygp","oeylfpbnpljvrvipyam","yehwqnqrqpmxujjloov","aowuxwhmsncbxcoksfz","kvatxdknlyjyhfixjsw","nkkufnuxxzrzbmnmgqo","oketlyhnkoaugzqrcdd","iuteiojwayyzpvscmps","ajlfvgubfaaovlzylnt","rkdcpwsrtesjwhdizco","bzcnfwlqijtvdwvxhrc","bldvgylwgbusbmborxt","lhcsmpxohgmgnkeufdx","otogbgxpeyanfetcuke","pzshkljugggekjdqzje","npevqgxiepjsrdzjazu","jllchhbfqmkimwzobiw"}
{"xduunfsksrsrtekmqdcyzjeeuhmsrqcozijipfioneeddpszrn","ymmtatbdzqsoemuvnpppsuacbazuxmhecthlegrpunkdmbppwe","gjoparmowzdqyoxytjbbhawdydcprjbxphoohpkwqyuhrqzhnb","opvlkhkvuojvkfzylfhetezopvlkhkvuojvkfzylfhetezopvl","lrzjpxiogvliexdzuzosrkrusvojbrzmwzpowkjilefraamdig","pgxnmscruedyiufjyxpqkboqhtpbmshxmkpkgezyfezkgqcoar","pqnjwjmwaxxmnsnhhlqqrzudltfzotcjtnzxuglsdsmzcnockv","jfyazaoytdeqdalpwpyqbachgcejzlnhpqdnwspxmvuyregaui","opxjceycljfauastcqsuokemfvrswoxbmowunzyrfgnuzgmffz","jzwucwljfrimpmyhchzriwkbarxbgfcbceyhjugixwtbvtrehb","kwpdnyqwqcngxeonmhvkmrdwjsmmtyijwzubgfozbbgjjjpaki","stnskvfdwpmyenzsnycnmdkupverztcmcfpoxhoxsmkllxwnay","cfqckcotzgkubmjrmbsztsshfroefwsjrxjhguzyupzwweiqur","ulzxywibpspffsicnkznmflawpugxsmevghbcbybkiauejofed","plxoaytcofgxypssfkdplxoaytcofgxypssfkdplxoaytcofgx","wqcudhnefnjhaimuczfskuiduburiswtbrecuykabfcvkdzezt","dukuhjzefczzzbfkqdpqzikfobucdhthxdjgkjelrlpaxamcer","witdptpcclifkeljytihrcqaybnefxnxvgzedyyhngycdrudmp","xxeuvykvkpkljefgekbyxoqmgoeugowkcivktwumkojgadpbmk","lskpsfarmikmggvpgvryqjmqksijelnycfzltqvxlqyypufpyr","ghfozqvlqfxwwkmfxdyygmdcaszsgovsodkjghcwmbmxrmhuyf","gajqkcklznayxqkqoyzwmyubzazcpkhktkydzivcuypurfmbis","kyrgzvxdhpoamvafyrarxsvkhtqdihersigbhzjzujxmmyspna","oirezeteirovcccwkewyhjrgknynaljtbuvfpgojfqnkwpeaon","ccvhhrjvbjtsqdjootgpknfpfycgfieowqrwwwpzsqmetogeps"}
199
Returns: {0, 0, 0, 0, 0, 59, 0, 56, 67, 0, 52, 53, 0, 52, 0, 0, 0, 0, 58, 56, 0, 0, 0, 49, 0 }

23x19, 50x50-50, 199, some found

11)
{"phqghumeaylnlfdxfir","cvscxggbwkfnqduxwfn","fozvsrtkjprepggxrpn","rvystmwcysyycqpevik","effmznimkkasvwsrenz","kycxfxtlsgypsfadpoo","efxzbcoejuvpvaboygp","oeylfpbnpljvrvipyam","yehwqnqrqpmxujjloov","aowuxwhmsncbxcoksfz","kvatxdknlyjyhfixjsw","nkkufnuxxzrzbmnmgqo","oketlyhnkoaugzqrcdd","iuteiojwayyzpvscmps","ajlfvgubfaaovlzylnt","rkdcpwsrtesjwhdizco","bzcnfwlqijtvdwvxhrc","bldvgylwgbusbmborxt","lhcsmpxohgmgnkeufdx","otogbgxpeyanfetcuke","pzshkljugggekjdqzje","npevqgxiepjsrdzjazu","jllchhbfqmkimwzobiw"}
{"xduunfsksrsrtekmqdcyzjeeuhmsrqcozijipfioneeddpszrm","ymmtatbdzqsoemuvnpppsuacbazuxmhecthlegrpunkdmbppwf","gjoparmowzdqyoxytjbbhawdydcprjbxphoohpkwqyuhrqzhnc","opvlkhkvuojvkfzylfhetezopvlkhkvuojvkfzylfhetezopvk","lrzjpxiogvliexdzuzosrkrusvojbrzmwzpowkjilefraamdif","pgxnmscruedyiufjyxpqkboqhtpbmshxmkpkgezyfezkgqcoag","pqnjwjmwaxxmnsnhhlqqrzudltfzotcjtnzxuglsdsmzcnockh","jfyazaoytdeqdalpwpyqbachgcejzlnhpqdnwspxmvuyregauo","opxjceycljfauastcqsuokemfvrswoxbmowunzyrfgnuzgmfff","jzwucwljfrimpmyhchzriwkbarxbgfcbceyhjugixwtbvtrehf","kwpdnyqwqcngxeonmhvkmrdwjsmmtyijwzubgfozbbgjjjpaks","stnskvfdwpmyenzsnycnmdkupverztcmcfpoxhoxsmkllxwnaz","cfqckcotzgkubmjrmbsztsshfroefwsjrxjhguzyupzwweiqut","ulzxywibpspffsicnkznmflawpugxsmevghbcbybkiauejofed","plxoaytcofgxypssfkdplxoaytcofgxypssfkdplxoaytcofgg","wqcudhnefnjhaimuczfskuiduburiswtbrecuykabfcvkdzezd","dukuhjzefczzzbfkqdpqzikfobucdhthxdjgkjelrlpaxamcea","witdptpcclifkeljytihrcqaybnefxnxvgzedyyhngycdrudma","xxeuvykvkpkljefgekbyxoqmgoeugowkcivktwumkojgadpbma","lskpsfarmikmggvpgvryqjmqksijelnycfzltqvxlqyypufpya","ghfozqvlqfxwwkmfxdyygmdcaszsgovsodkjghcwmbmxrmhuya","gajqkcklznayxqkqoyzwmyubzazcpkhktkydzivcuypurfmbia","kyrgzvxdhpoamvafyrarxsvkhtqdihersigbhzjzujxmmyspnd","oirezeteirovcccwkewyhjrgknynaljtbuvfpgojfqnkwpeaoa","ccvhhrjvbjtsqdjootgpknfpfycgfieowqrwwwpzsqmetogepa"}
199
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

like before: 23x19, 50x50-50, 199, all changed last letter

12)
{"phqghumeaylnlfdxfircvscxg"}
{"wkfnqduxwfnfozvsrtkjpr","ggxrpnrvystmwcysyycqpevikeffmznimkkasvwsrenzkycx","drchuyfisphalfvggenxcxqmldrchuyfis","sfadpooefxzbcoejuvpvaboygpoe","fpbnpljv","srxlymgpcc","ehwqnqr","mxujjloova","uxwhmsncbxcoksfzkvatx","fcmxgaihlcg","fixjswnkkufnuxxzrzbmnmgqooketlyhnkoa","zqrcddiuteiojwayyzpvscmpsajlfvgubfaaovl","dllamhqpxscixfnyeughgcvrfdllamhqpxscixf","cpwsrtesjwhdizcobzcnfwlqijtvdwvxhrcb","fshmnfshmnfshmnfshmnfshmnfshmnfshmnfshmnfshmnf","busbmborxtlhcsmpxohgmgnkeufdxotog","genxcxqmldrchuyfisphalfvggenxcxqmldrchuyfis","fetcukepzshkljugggekjdqzjenpevqgxiepjsrdzjazuj","uuuu","cnpdgimvyxlhxhreslgfqfucacnpdgimvyxlhxhresl","obiwybxduunfsksrsrtekmqdcyzjeeuhmsrqco","hcluxfyqvfmgilgsdeprn","needdpszrnavymm","nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn","oemuvnpppsu"}
99
Returns: {0, 0, 277, 0, 0, 273, 0, 0, 0, 239, 0, 0, 269, 0, 0, 0, 277, 0, 0, 252, 0, 241, 0, 0, 0 }

1x25, 25x1-50, some

13)
{"a","c","b","a","z","u","x","m","h","e","c","t","h","l","e","g","r","p","u","n","k","d","m","b","p"}
{"c","tdxrctdxrctdxrctdxrctdxrctdxrctdxrctdxrct","z","rbuhnch","dmuzgchbekxpaeatmhnurblpcdmuzgchbekxpa","ydcprjbxphoohpkwqy","rqzhnbnf","qnqqlrzjpxiogvliexdzuzosrk","bbbbbbbbbbbbb","upzrag","ademautzmghcnhubrebklxppc","lcmzcbkpethubpdughexaamnrlcmzcbkpethubpdu","igpnpuuhgxpqnjwjmw","xmnsnhhlqqrzudltfzotcjtnzxuglsdsmzcn","kvfajfrmxothowkbjzwucwljfrimpmyhchzriwkbarxbgfcbc","hjugixwtbvtrehbbcpxif","lnaxhuputp","cfqckcotz","ubmjrmbsztsshfroefwsj","cmuecx","puuxnmkhdemcbtp","iqurpixiqflduuveoowqcudhnefnjhaimuczfskuiduburisw","eeeeeeeeeeeeee","abfcvkdze","bczmclrnmaaxehgudpbuhtepkbczmclrnmaaxehg"}
99
Returns: {5835, 0, 5011, 246, 270, 0, 0, 0, 0, 242, 241, 273, 0, 0, 0, 0, 238, 0, 0, 235, 240, 0, 0, 0, 237 }

25x1, 25x1-50, some

14)
{"phqghumeaylnlfdxfircvsc","xggbwkfnqduxwfnfozvsrtk","jprepggxrpnrvystmwcysyy","cqpevikeffmznimkkasvwsr","enzkycxfxtlsgypsfadpooe","fxzbcoejuvpvaboygpoeylf","pbnpljvrvipyamyehwqnqrq","pmxujjloovaowuxwhmsncbx","coksfzkvatxdknlyjyhfixj","swnkkufnuxxzrzbmnmgqook","etlyhnkoaugzqrcddiuteio","jwayyzpvscmpsajlfvgubfa","aovlzylntrkdcpwsrtesjwh","dizcobzcnfwlqijtvdwvxhr","cbldvgylwgbusbmborxtlhc","smpxohgmgnkeufdxotogbgx","peyanfetcukepzshkljuggg","ekjdqzjenpevqgxiepjsrdz","jazujllchhbfqmkimwzobiw"}
{"x","i","r","t","m","c","j","u","v","i","x","p","r","x","i","o","u","y","c","t","k","r","m","z","v"}
199
Returns: {24253, 23317, 23317, 22188, 23317, 24253, 23124, 23317, 23317, 23317, 24253, 24305, 23317, 24253, 23317, 22188, 23317, 23317, 24253, 22188, 22188, 23317, 23317, 22188, 23317 }

19x23, 25x1-1, some

15)
{"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa",
"aaaaaaaaaaaaaaaaaaaaaaa"}
{"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaad",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaae",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaai",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaj",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaam",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaan",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaao",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaap",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaq",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaat",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaau",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaav",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaax",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaay",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz"}
1
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

like #5, k=1

16)
{"ktrffaclvgrzkkldacl","lteojomonxrqyjzginr","nnzwacxxaedrwudxzrf","usewjtboxvynfhkstce","naumnddxfdmvzcautdc","ckxaaydzsxttobbgqng","vvpjgojoglmkxgbfcpy","pckqchbddzwrxbzmqrl","xvobtwhxginfgfrcclm","znmjugwwbsqfcihubsj","ollmsqsghmcphelsotf","lbgsfnpcuzsrupchynv","zhcpqugriwniqxdfjpw","pxfblkpnpeelfjmtkuq","pzomwnlmbupmktlptnd","mpdsydsgvfpenemwbor","ifsuqhceskmkhssmvno","nwafxwhgbibabvqopqf","oviussqfqwehtxdzujt","lntxmrjxxwtlggkytbi","olydnilqadojskkvfxa","hhjmbocljarintdwcld","vdxropbyjzwyyojuoth"}
{"wwqsgcsnhwxeobuidixaecjuukv","lmdclhrzbbakdzljdkkdqsmlmdclhrzbbakdz","cxvmuwdsxwutvhocedgnyqsdwsjifwlhss","scwgiwywdldwsxclozzgnmbkljlhzdewtdrofegt","tkndnfmtjobjdwddtwvlcscaorofoulw","hacqtiwedhygtdlgsdqcbkwtzmfmzofczoj","vphkhgxdgxhwblgcjhpeojidbleoxu","htcppvmdnvxajnkdoctgnscwlrf","ukznsamezxfnfztqdgsqvgqpbrkofcdieodxx","pgxrtepcswsplladvpjnyqsjfdt","kmjwhpjqzjlndffatrhxvbupogdlxx","mrosmozgsqabyxbtutkmfcvgntmbdlffofkp","ojjacuflyxmbfangtsqwqsnojjacuflyx","pkxomfalhtxjjhyvowtsubbdlwqescfqfcsok","bopznbauspgjlnzflmgkcmdpk","uhjbvvjljnlbhbsxqerbqbanrpqbdszg","duclsbwjuxykkbpcrwokwqgtbqchwzur","ucpqvtbttzkijayoocbfctqucpqvtbt","ofxtladbxqnpfqjoeoorjujrxw","xczwuowzvefnwlcgxdygsmsqdrhvdpuoblaipr","ioznmapasplfhaiykmvjalothmyponxsrart","pzbtqfshnigmprahzxdgdflkhsftbsw","laopbwfortvkhbsmjcghymqalvv"}
1
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

like #8, k=1

17)
{"phqghumeaylnlfdxfir","cvscxggbwkfnqduxwfn","fozvsrtkjprepggxrpn","rvystmwcysyycqpevik","effmznimkkasvwsrenz","kycxfxtlsgypsfadpoo","efxzbcoejuvpvaboygp","oeylfpbnpljvrvipyam","yehwqnqrqpmxujjloov","aowuxwhmsncbxcoksfz","kvatxdknlyjyhfixjsw","nkkufnuxxzrzbmnmgqo","oketlyhnkoaugzqrcdd","iuteiojwayyzpvscmps","ajlfvgubfaaovlzylnt","rkdcpwsrtesjwhdizco","bzcnfwlqijtvdwvxhrc","bldvgylwgbusbmborxt","lhcsmpxohgmgnkeufdx","otogbgxpeyanfetcuke","pzshkljugggekjdqzje","npevqgxiepjsrdzjazu","jllchhbfqmkimwzobiw"}
{"xduunfsksrsrtekmqdcyzjeeuhmsrqcozijipfioneeddpszrn","ymmtatbdzqsoemuvnpppsuacbazuxmhecthlegrpunkdmbppwe","gjoparmowzdqyoxytjbbhawdydcprjbxphoohpkwqyuhrqzhnb","opvlkhkvuojvkfzylfhetezopvlkhkvuojvkfzylfhetezopvl","lrzjpxiogvliexdzuzosrkrusvojbrzmwzpowkjilefraamdig","pgxnmscruedyiufjyxpqkboqhtpbmshxmkpkgezyfezkgqcoar","pqnjwjmwaxxmnsnhhlqqrzudltfzotcjtnzxuglsdsmzcnockv","jfyazaoytdeqdalpwpyqbachgcejzlnhpqdnwspxmvuyregaui","opxjceycljfauastcqsuokemfvrswoxbmowunzyrfgnuzgmffz","jzwucwljfrimpmyhchzriwkbarxbgfcbceyhjugixwtbvtrehb","kwpdnyqwqcngxeonmhvkmrdwjsmmtyijwzubgfozbbgjjjpaki","stnskvfdwpmyenzsnycnmdkupverztcmcfpoxhoxsmkllxwnay","cfqckcotzgkubmjrmbsztsshfroefwsjrxjhguzyupzwweiqur","ulzxywibpspffsicnkznmflawpugxsmevghbcbybkiauejofed","plxoaytcofgxypssfkdplxoaytcofgxypssfkdplxoaytcofgx","wqcudhnefnjhaimuczfskuiduburiswtbrecuykabfcvkdzezt","dukuhjzefczzzbfkqdpqzikfobucdhthxdjgkjelrlpaxamcer","witdptpcclifkeljytihrcqaybnefxnxvgzedyyhngycdrudmp","xxeuvykvkpkljefgekbyxoqmgoeugowkcivktwumkojgadpbmk","lskpsfarmikmggvpgvryqjmqksijelnycfzltqvxlqyypufpyr","ghfozqvlqfxwwkmfxdyygmdcaszsgovsodkjghcwmbmxrmhuyf","gajqkcklznayxqkqoyzwmyubzazcpkhktkydzivcuypurfmbis","kyrgzvxdhpoamvafyrarxsvkhtqdihersigbhzjzujxmmyspna","oirezeteirovcccwkewyhjrgknynaljtbuvfpgojfqnkwpeaon","ccvhhrjvbjtsqdjootgpknfpfycgfieowqrwwwpzsqmetogeps"}
25
Returns: {0, 0, 0, 0, 0, 1, 0, 1, 3, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0 }

like 10, small k

18)
{"phqghumeaylnlfdxfir","cvscxggbwkfnqduxwfn","fozvsrtkjprepggxrpn","rvystmwcysyycqpevik","effmznimkkasvwsrenz","kycxfxtlsgypsfadpoo","efxzbcoejuvpvaboygp","oeylfpbnpljvrvipyam","yehwqnqrqpmxujjloov","aowuxwhmsncbxcoksfz","kvatxdknlyjyhfixjsw","nkkufnuxxzrzbmnmgqo","oketlyhnkoaugzqrcdd","iuteiojwayyzpvscmps","ajlfvgubfaaovlzylnt","rkdcpwsrtesjwhdizco","bzcnfwlqijtvdwvxhrc","bldvgylwgbusbmborxt","lhcsmpxohgmgnkeufdx","otogbgxpeyanfetcuke","pzshkljugggekjdqzje","npevqgxiepjsrdzjazu","jllchhbfqmkimwzobiw"}
{"xduunfsksrsrtekmqdcyzjeeuhmsrqcozijipfioneeddpszrn","ymmtatbdzqsoemuvnpppsuacbazuxmhecthlegrpunkdmbppwe","gjoparmowzdqyoxytjbbhawdydcprjbxphoohpkwqyuhrqzhnb","opvlkhkvuojvkfzylfhetezopvlkhkvuojvkfzylfhetezopvl","lrzjpxiogvliexdzuzosrkrusvojbrzmwzpowkjilefraamdig","pgxnmscruedyiufjyxpqkboqhtpbmshxmkpkgezyfezkgqcoar","pqnjwjmwaxxmnsnhhlqqrzudltfzotcjtnzxuglsdsmzcnockv","jfyazaoytdeqdalpwpyqbachgcejzlnhpqdnwspxmvuyregaui","opxjceycljfauastcqsuokemfvrswoxbmowunzyrfgnuzgmffz","jzwucwljfrimpmyhchzriwkbarxbgfcbceyhjugixwtbvtrehb","kwpdnyqwqcngxeonmhvkmrdwjsmmtyijwzubgfozbbgjjjpaki","stnskvfdwpmyenzsnycnmdkupverztcmcfpoxhoxsmkllxwnay","cfqckcotzgkubmjrmbsztsshfroefwsjrxjhguzyupzwweiqur","ulzxywibpspffsicnkznmflawpugxsmevghbcbybkiauejofed","plxoaytcofgxypssfkdplxoaytcofgxypssfkdplxoaytcofgx","wqcudhnefnjhaimuczfskuiduburiswtbrecuykabfcvkdzezt","dukuhjzefczzzbfkqdpqzikfobucdhthxdjgkjelrlpaxamcer","witdptpcclifkeljytihrcqaybnefxnxvgzedyyhngycdrudmp","xxeuvykvkpkljefgekbyxoqmgoeugowkcivktwumkojgadpbmk","lskpsfarmikmggvpgvryqjmqksijelnycfzltqvxlqyypufpyr","ghfozqvlqfxwwkmfxdyygmdcaszsgovsodkjghcwmbmxrmhuyf","gajqkcklznayxqkqoyzwmyubzazcpkhktkydzivcuypurfmbis","kyrgzvxdhpoamvafyrarxsvkhtqdihersigbhzjzujxmmyspna","oirezeteirovcccwkewyhjrgknynaljtbuvfpgojfqnkwpeaon","ccvhhrjvbjtsqdjootgpknfpfycgfieowqrwwwpzsqmetogeps"}
2
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

like #10 and #17, very small k

19)
{"phqghumeaylnlfdxfircvsc","xggbwkfnqduxwfnfozvsrtk","jprepggxrpnrvystmwcysyy","cqpevikeffmznimkkasvwsr","enzkycxfxtlsgypsfadpooe","fxzbcoejuvpvaboygpoeylf","pbnpljvrvipyamyehwqnqrq","pmxujjloovaowuxwhmsncbx","coksfzkvatxdknlyjyhfixj","swnkkufnuxxzrzbmnmgqook","etlyhnkoaugzqrcddiuteio","jwayyzpvscmpsajlfvgubfa","aovlzylntrkdcpwsrtesjwh","dizcobzcnfwlqijtvdwvxhr","cbldvgylwgbusbmborxtlhc","smpxohgmgnkeufdxotogbgx","peyanfetcukepzshkljuggg","ekjdqzjenpevqgxiepjsrdz","jazujllchhbfqmkimwzobiw"}
{"x","i","r","t","m","c","j","u","v","i","x","p","r","x","i","o","u","y","c","t","k","r","m","z","v"}
5
Returns: {21, 20, 20, 19, 20, 21, 20, 20, 20, 20, 21, 21, 20, 21, 20, 19, 20, 20, 21, 19, 19, 20, 20, 19, 20 }

like 14: 19x23, 25x1-1, some, but small k (smaller counts)

20)
{"ccbbcbaabcccbabcbca","aaacabbaccccacaabcb","bacacaacabcbccbaabc","abbbccaabbcbbcacabc","aaacacabacbccbaacbc","bcaacacbaaaaccacccb","aacaaabacaccabcbcba","bbbacbabcaaccbccacb","cbacacacbcaccabaccb","ccbaaaaabbacbacacbc","cbabcaacbbcccaccbcb","acbacbcabaababccaaa","acccccbbaabbccbccca","bbacacaacbcccbaaaca","cabccabcccccabcaaaa","bbbcbbbaabccacccaba","cbcbbcbabacabbbbbba","bbcabcbcbcaabcbcccb","abaccccabbabbbacbba","cbcccaaacaccababccc","bcaccbcbcaacacbccba","cbccbccaccbcbcabbbc","cabaacaccbcccbccacc"}
{"cbcccbbccbacbcbcbbcbabcbacbbababcbcacbaaabbaba","bbcbccbaccbbcbbbbcbbaacabaccbcbccabbbbccaabcbbca","bbcaaaabababbabbbacaaabaabaccbcaaccaabcbbaccacbabb","cccbbaccccacccaaaabcacccacbccbcbcbbbbaabcaccbcb","cbbacccabaabbabcbabbbbccbbacccabaabbabcbabbbbccbba","bbaacccacbbabbabcccababcacababacccbacacabcbcc","abccccabcbaabbaaabaccccabbababaacabbcacbacacbbcba","bccabcbbbbccbcacccccabaccabcbcbcccbbbbcaaaaaacbac","aabcaaccbacbbaacacabcabacbaabcaabbccccccacbccc","abcbabaabcbbaaacccccabaaaabcaabbccccaccbacababba","ccaccbccababbaabbbbccaccbccababbaabbbbccaccbccabab","abbbaccbcccbaaccaaabaacccaaabcacabcbcacabcbcccaba","accbbacbbccaccaccabccbababbbacbacbaabcbbcaaca","aaacacbcbbbcccabaabbacbacbabcbcbcacabaaaaacaab","aacabcaabccabacbbbbcabcccacbacbababacaccabcaacbaa","cacaaaababcccbbabaccabcaccaccbbcacbbcbabaabbabb","cccaaccbccacccaccbccabaacbcbccabcacaacacbaaaaab","bcbaababaacaaaaaacccbcbbabbbbbcbcacbababacbbabcba","abcacbcbcabcbcbbcabcbcabaaaccacbaacbacaccababb","accbacabbbaccccabcbbccbcbccaabbacccabcabccaaacbb","abacaaababacaababcaccbababcabcababbaababcbabb","bbacccbbbccacbacccbccaabcaabcbbbccbaccbabcaac","aabababacabbcbbaccacbbbcbabccaccabcacabaacbbacb","caabcaaaaacccabbaabaabcbacccbcbabaccbcbaabaaacabba","cbcbaabcccabbbbaabaacababccaabbbbbacabccaccabc"}
199
Returns: {0, 0, 0, 46, 0, 0, 0, 63, 0, 0, 0, 59, 0, 56, 0, 62, 47, 0, 51, 47, 0, 0, 0, 0, 56 }

19x23, 25x45-50, some, 3 letters

21)
{"ccbbcbaabcccbabcbcaaaac","abbaccccacaabcbbacacaac","abcbccbaabcabbbccaabbcb","bcacabcaaacacabacbccbaa","cbcbcaacacbaaaaccacccba","acaaabacaccabcbcbabbbac","babcaaccbccacbcbacacacb","caccabaccbccbaaaaabbacb","acacbccbabcaacbbcccaccb","cbacbacbcabaababccaaaac","ccccbbaabbccbcccabbacac","aacbcccbaaacacabccabccc","ccabcaaaabbbcbbbaabccac","ccabacbcbbcbabacabbbbbb","abbcabcbcbcaabcbcccbaba","ccccabbabbbacbbacbcccaa","acaccababcccbcaccbcbcaa","cacbccbacbccbccaccbcbca","bbbccabaacaccbcccbccacc","bbcbcccbbccbacbcbcbbcba","bcbacbbababcbcacbaaabba","bacabbcbccbaccbbcbbbbcb","baacabaccbcbccabbbbccaa"}
{"cccabcbababcaabccabaacacccabcbababcaabccabaacaccca","bccbbabcabababccbbccbbbbccbbabcabababccbbccbbbbccb","ccaccacbcbccbcbcaaaacbcccaccacbcbccbcbcaaaacbcccac","bcccaccbacacbccbabcaacbbcccaccbacacbccbabcaacbbccc","bacbcbccabcacbaacbcccbbbacbcbccabcacbaacbcccbbbacb","ccbacccaaaaaabccbbacbacccbacccaaaaaabccbbacbacccba","bcccccacabcbccccccaacbcbcccccacabcbccccccaacbcbccc","cbacaacccabccbcbbaaccbbcbacaacccabccbcbbaaccbbcbac","bbcbaabaaccaacccbcaaaacbbcbaabaaccaacccbcaaaacbbcb","ccaaaaacccaccabcaacbcccccaaaaacccaccabcaacbcccccaa","abccbccabacacccbbaccbababccbccabacacccbbaccbababcc","cbabbaaabbcbbbabcaccacacbabbaaabbcbbbabcaccacacbab","bcaaabcbabcbbcaabbaaabcbcaaabcbabcbbcaabbaaabcbcaa","cccbcbccbbcccacccbbabbacccbcbccbbcccacccbbabbacccb","bacbbcaccccbaccbacccbaabacbbcaccccbaccbacccbaabacb","cbbabccabbcaacaaaacaacacbbabccabbcaacaaaacaacacbba","bccabcbcccbbaccbacaccccbccabcbcccbbaccbacaccccbcca","bacbbbbbbbcbcaabacbbbcbbacbbbbbbbcbcaabacbbbcbbacb","cacccccbbbbaccaabbacccccacccccbbbbaccaabbacccccacc","acccbcaabbacaabcccacacbacccbcaabbacaabcccacacbaccc","bcaabccbbcbbcbbbaccbbcabcaabccbbcbbcbbbaccbbcabcaa","aaaacabbbbacbbcbacbbabbaaaacabbbbacbbcbacbbabbaaaa","bcbcbcacabbccabcccbabacbcbcbcacabbccabcccbabacbcbc","abcbcbbaccaaabbbacccaccabcbcbbaccaaabbbacccaccabcb","bbaaacbaccbaaccbaaacaacbbaaacbaccbaaccbaaacaacbbaa"}
199
Returns: {0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

23x23, 25x50-50, found, 3 letter

22)
{"abcbaabbaaabaccccab","bababaacabbcacbacac","bbcbaabaabbbbaabcaa","ccbacbbaacacabcabac","baabcaabbccccccacbc","cccaabcbabaabcbbaaa","cccccabaaaabcaabbcc","ccaccbacababbaccaca","babbacbbaaccbbacbbc","caccaccabccbababbba","cbacbaabcbbcaacaaba","bbabbaacabcaabccaba","cbbbbcabcccacbacbab","abacaccabcaacbaabcc","accacbccaabbcbaabab","aacaaaaaacccbcbbabb","bbbcbcacbababacbbab","cbabbcacbcaccbcaaab","acaaababacaababcacc","bababcabcababbaabab","cbabbcabbacccbbbcca","cbacccbccaabcaabcbb","bccbaccbabcaacacaab"}
{"bacabbbcacabaaccccaacccaabbaabacbbccbbbabaaccaa","aaccbbaaccabccbacbaabbbaabcbcbcaaccbacbbccbacba","bcabcacbcbbaccbbabacbaacaabcbabcbabcacaccbccccc","caabcaacbcbbcbcaaccabccbccabaabbbccabcbbbabacbc","acaabbaacabbbacbaccacaabbaacabbbacbaccacaabbaac","bcacabacacccacabccbabcaaaaaacaaabcbccaccaacaaca","bbabcbbbaaccabaabcbaaaacacbaacabbbacaccbacaabab","babcaaabcaabcbbcabaaabcababbacabacaacbabbccbacc","ccabcaccaabbcbcaccaaccbaaabbccbcabcbabababaaacb","abbbccaaaccbcaabbcccbcaaacabcccccbbaacaaccbabaa","aacbbacbbabcacaacbcaaaccacccbbaccbacbaccaccacab","cbbaaabcaacaababbbaaabbccaccaabcabaababcbabaabb","abbbbabbbabbbaacabacacabacabcabcacbcababccabcba","bbaaaccaabcbbaccababcabbbcbacaaaabccbbbbbabbabc","ccaaabbaaabcbbbacaacacbbaacacbcccccbccbcabbcbca","caaabcaabcabaacabacccacaaaccabccbcaabbacbcaacaa","cacabcccbabaacabbbbbcbababbacbaabacacaaccbcacca","aabaaaaaccbccbccbabbaabacbaabbbabbabcacbcbbcbba","babcaaabcacbbaacbcababcaaabcacbbaacbcababcaaabc","baaabcbbaccabacbabbaabbaacbaabbbabacabababcaccc","abbbabbcccacabacacbababbbbabbaacbccacabaaacbaaa","bccbcaacabcccbbaaaabaacbccbcaacabcccbbaaaabaacb","abbbcbbbcbbcbcabaacccbabaabaccbbaaabbccbcbccbca","aaccbabaacabcaacabcabbbcacabacabaaacbbabbbbcacc","aacbaabccabacaccabcaacbaabccabacaccabcaacbaabcc"}
197
Returns: {52, 52, 53, 48, 0, 57, 53, 58, 57, 59, 60, 52, 49, 57, 64, 57, 53, 56, 0, 51, 59, 0, 50, 50, 0 }

19x23, 25x47-47, found, 3 letter

23)
{"abcbaabbaaabaccccab","bababaacabbcacbacac","bbcbaabaabbbbaabcaa","ccbacbbaacacabcabac","baabcaabbccccccacbc","cccaabcbabaabcbbaaa","cccccabaaaabcaabbcc","ccaccbacababbaccaca","babbacbbaaccbbacbbc","caccaccabccbababbba","cbacbaabcbbcaacaaba","bbabbaacabcaabccaba","cbbbbcabcccacbacbab","abacaccabcaacbaabcc","accacbccaabbcbaabab","aacaaaaaacccbcbbabb","bbbcbcacbababacbbab","cbabbcacbcaccbcaaab","acaaababacaababcacc","bababcabcababbaabab","cbabbcabbacccbbbcca","cbacccbccaabcaabcbb","bccbaccbabcaacacaab"}
{"bacabbbcacabaaccccaacccaabbaabacbbccbbbabaaccaf","aaccbbaaccabccbacbaabbbaabcbcbcaaccbacbbccbacbf","bcabcacbcbbaccbbabacbaacaabcbabcbabcacaccbccccf","caabcaacbcbbcbcaaccabccbccabaabbbccabcbbbabacbf","acaabbaacabbbacbaccacaabbaacabbbacbaccacaabbaaf","bcacabacacccacabccbabcaaaaaacaaabcbccaccaacaacf","bbabcbbbaaccabaabcbaaaacacbaacabbbacaccbacaabaf","babcaaabcaabcbbcabaaabcababbacabacaacbabbccbacf","ccabcaccaabbcbcaccaaccbaaabbccbcabcbabababaaacf","abbbccaaaccbcaabbcccbcaaacabcccccbbaacaaccbabaf","aacbbacbbabcacaacbcaaaccacccbbaccbacbaccaccacaf","cbbaaabcaacaababbbaaabbccaccaabcabaababcbabaabf","abbbbabbbabbbaacabacacabacabcabcacbcababccabcbf","bbaaaccaabcbbaccababcabbbcbacaaaabccbbbbbabbabf","ccaaabbaaabcbbbacaacacbbaacacbcccccbccbcabbcbcf","caaabcaabcabaacabacccacaaaccabccbcaabbacbcaacaf","cacabcccbabaacabbbbbcbababbacbaabacacaaccbcaccf","aabaaaaaccbccbccbabbaabacbaabbbabbabcacbcbbcbbf","babcaaabcacbbaacbcababcaaabcacbbaacbcababcaaabf","baaabcbbaccabacbabbaabbaacbaabbbabacabababcaccf","abbbabbcccacabacacbababbbbabbaacbccacabaaacbaaf","bccbcaacabcccbbaaaabaacbccbcaacabcccbbaaaabaacf","abbbcbbbcbbcbcabaacccbabaabaccbbaaabbccbcbccbcf","aaccbabaacabcaacabcabbbcacabacabaaacbbabbbbcacf","aacbaabccabacaccabcaacbaabccabacaccabcaacbaabcf"}
197
Returns: {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

19x23, 25x47-47, not found (changed last), 3 letter

Submissions are judged against all 87 archived test cases, of which 24 are shown here. Case numbers match the judge’s.

Coding Area

Language: C++17 · define a public class InfiniteSoup with a public method vector<int> countRays(vector<string> g, vector<string> words, int k) · 87 test cases · 2 s / 256 MB per case

Submitting as anonymous