Statistics

Problem Statement for "SetOfPatterns"

Problem Statement

You are given a String[] patterns, each element of which is a single pattern. Each pattern contains only lowercase letters and question marks ('?'). A string matches a pattern if it has the same length as the pattern, and at each position, either the corresponding characters are equal or the character in the pattern is a question mark. For example, "abc" matches "a?c", but not "a?b" or "abc?". Return the number of strings consisting of only lowercase letters that match exactly k of the given patterns, modulo 1,000,003.

Definition

Class:
SetOfPatterns
Method:
howMany
Parameters:
String[], int
Returns:
int
Method signature:
int howMany(String[] patterns, int k)
(be sure your method is public)

Constraints

  • patterns will contain between 1 and 15 elements, inclusive.
  • k will be between 1 and the number of elements in patterns, inclusive.
  • Each element of patterns will contain between 1 and 50 characters, inclusive.
  • Each element of patterns will have the same length.
  • Each element of patterns will contain only lowercase letters ('a' - 'z') and question marks ('?').

Examples

  1. {"?"}

    1

    Returns: 26

    Every lowercase letter matches this pattern.

  2. {"a","b","c"}

    1

    Returns: 3

    "a" or "b" or "c".

  3. {"a?","?b"}

    2

    Returns: 1

    The only possible solution is "ab".

  4. {"?????"}

    1

    Returns: 881343

    26^5 mod 1000003 = 881343.

  5. {"?","?"}

    1

    Returns: 0

  6. {"??","ab"}

    1

    Returns: 675

  7. {"a??","?a?","??a"}

    2

    Returns: 75

    25*3=75.

  8. {"??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????"}

    1

    Returns: 0

  9. { "a?????????????????????????????????????????????????", "b?????????????????????????????????????????????????", "c?????????????????????????????????????????????????", "d?????????????????????????????????????????????????", "e?????????????????????????????????????????????????", "f?????????????????????????????????????????????????", "g?????????????????????????????????????????????????", "h?????????????????????????????????????????????????", "i?????????????????????????????????????????????????", "j?????????????????????????????????????????????????", "k?????????????????????????????????????????????????", "l?????????????????????????????????????????????????", "m?????????????????????????????????????????????????", "n?????????????????????????????????????????????????", "o?????????????????????????????????????????????????"}

    1

    Returns: 61146

  10. { "a?????????????????????????????????????????????????", "?b????????????????????????????????????????????????", "??c???????????????????????????????????????????????", "???d??????????????????????????????????????????????", "????e?????????????????????????????????????????????", "?????f????????????????????????????????????????????", "??????g???????????????????????????????????????????", "???????h??????????????????????????????????????????", "????????i?????????????????????????????????????????", "?????????j????????????????????????????????????????", "??????????k???????????????????????????????????????", "???????????l??????????????????????????????????????", "????????????m?????????????????????????????????????", "?????????????n????????????????????????????????????", "??????????????o???????????????????????????????????"}

    1

    Returns: 993142

  11. { "a?????????????????????????????????????????????????", "?b????????????????????????????????????????????????", "??c???????????????????????????????????????????????", "???d??????????????????????????????????????????????", "????e?????????????????????????????????????????????", "?????f????????????????????????????????????????????", "??????g???????????????????????????????????????????", "???????h??????????????????????????????????????????", "????????i?????????????????????????????????????????", "?????????j????????????????????????????????????????", "??????????k???????????????????????????????????????", "???????????l??????????????????????????????????????", "????????????m?????????????????????????????????????", "?????????????n????????????????????????????????????", "??????????????o???????????????????????????????????"}

    2

    Returns: 358080

  12. {"ek??cz???d?svhm???z?l????o??ooh????x?x?ooz?r","pfae??adb?g??dy?mmb?ke?wl?pyt??qhlaqobnp????","???cy??f???h?m?n???t??z???f?o?ezbwqapty??gu?","??i????ul?k????jk?erx??v?j??e?i?x???p?ua??kc","v???b?t??ngxy??ogeus?y??o?????wg?u?eqpl??ij?","mr?uap???k?j?kag?vm?rlser???ysv???h?ldx?psud","q??pm?c??yhtd?n?u??o?yq??d??y??v?u??ij???hzt","???zp??xh?????uzp?n???zj????p?h?q?mc????pc??","??jc???ij??t?w???o?utja???yi??l???o??zy??j??"}

    6

    Returns: 0

  13. {"?????????????","?y???????????","w????????z???","??????s????b?","h????e??????s","?????????????","x???a????????","?????????v???","????h???????r"}

    4

    Returns: 463824

  14. {"x?????pebf?xay?d?jk??m?o?????cn??x?f?g?p?","??fuzru?e??k????ne?i??r?qk?sg?hs?t??z?l?s","?wquxuynhdy??m?j?c?h?ui???dce?i?wn?c??zmv","m??fewo?j?j?s?????veoc??qd?yll?br?h?y????","kp?ny??k?ork?xky?r?e?nik??w???uz??godh???","??tl?b?g?es?tmya?s?i????qgt?o??t??b?niz?i","??qm?ysee???g?z??xo?c????lmjq?rcwmpxep?m?"}

    2

    Returns: 0

  15. {"?????????w????d","o?rdb??????????","???????????????","??k????a???j???","??r??????phr???"}

    1

    Returns: 245945

  16. {"??g???????????????????g??????????","?????????????????????????????????","??r??????????????????l????xy?????","????????????????????????????u?v??","???????????????????????ax?l?????a","??????????????l???????po?????????","?????????????nwc????????????????e"}

    3

    Returns: 844724

  17. {"l???b??h??????????s???lu","???????q????w??d?k??????","?i???oqa?????????????p??","???q???s????????????????","????????o?????b?????????","???f??a?????????????????","???i????????????p???????","?????????i?????uw???????","??g????????h??u?????kn??","????x???????????????????","?x?b??q????n??z????o??r?","????h?????q???????????l?","??????d?i??o???y????i??q","??e??????n???????????e??","????j??a??????????????p?"}

    10

    Returns: 0

  18. {"?u??????????????????????m?????????kt????","?????tu??m?m????????m?????t?????????????","??????????????????????????f????i????????","???p?????????????????x????c?????????????","c????????????f??h????v?????o??????j?c??v","????b????z??cy??????g???????????????????","o??u?????????p??????l????s??????????????"}

    7

    Returns: 0

  19. {"??????????","?????n??ou","??????????","??n??????q","????????x?","??m?????l?","?x????ms??"}

    4

    Returns: 549663

  20. {"c?u?n???d??q??o??u?e???????uv?????n????"}

    1

    Returns: 12328

  21. {"knfichp","rljwuek","leoyfvo"}

    3

    Returns: 0

  22. {"j???i?a?????????l?????m??a?????????","???????j???????q???m?b??e??????????","????e???????????????????b???????l??","?????????????????t????????????????l","???????i???pr????m??????d??b?????h?","?c?uk???????????????????????????b??","????d???????n??t??????l??opf???r???","????????????????????????r??????????","?????????r????z????v?ds???s????????","?o?????v??ed???????t??u??p?k???????","?????????????????v?????????l?y?????"}

    7

    Returns: 0

  23. {"??c?a??????br???u??q???f??x????c????i?????g???r?","f??n???x??p???wh????z?????f?iw??n?e??y????p??c??","???tta?l??i?ed????s?ml??m???????f?ja???ii?????h?","?p?x?n??z???q?????????d?u??s?y????q???b????z???u","r?s??????????a????h?????c?????e??????mn????z????","???????g?y?he?s??b??????a???x????owcp?x?????ul??","r??????x?hj?n????zp????pjt??x?j??x?xr??gx??v??a?","???????r????b??e????t?gv?z????qo?????lw???p?iv??","??cyfl??c??g??kpwk????o?hp???j??phu?????jzsu????","??????????u??????b?pxb?????????eg???k??nma???q?r","???e??qib????z?????j???ubt???dh??z????s?e????i??"}

    8

    Returns: 0

  24. {"????b","??r??","????r","?????","?h???","??y??","?????","?????","???c?","?????","?????","?????","?????","????p"}

    8

    Returns: 635094

  25. {"?????????????fz?r???????????????k????????sg???e?","?????????????????a????g?r?????????????????????q?","????????????????d???o??v?????x??f????????m???e??","?????h?x??????????????v??????????????????q???s??"}

    2

    Returns: 254478

  26. {"?fp?bx??d????a??tz","?lx??lh????n?o????","?t???v?????yuta?bm","r?v?ozy??r?t?????a","?od???qe?f????y??j","???v?gz?te????????","????l??zy??k??????","????b?b?t????yv?zz"}

    3

    Returns: 0

  27. {"??????????b??a???dy???????z?????n??","?b???l????hi???????????i????????b?d"}

    1

    Returns: 332856

  28. {"??c??v???v???????v??????????r?mdf??","?a??k?a?v????t??d?d?????????q??????","apy???z?????????q??t??????o???p???g","w????s??????????????????p???d??????","????b?????????i?ex??????????????l??","?i???w???r?????o??z???????????o????","w??d??i???e?nel?????qlp????m?e?????","?????ik????p?y?????????sqm???????d?","???????mz?????q???qf??x???????????h","??s?j?x???????????a?????????u??????","?????d?wh?????a????????????????????","??jd????x????????????g??w????y???d?"}

    5

    Returns: 0

  29. {"f???u???ve??a?qk?fmd?b???????hc???????r","????vs??sn???qr???el?????v????mn?ke????","g???????h?l?mu??????l????hq????id?y???d","????o?toi???s?????o??aiz????????????h??","??g??ub?z???fp?fl??kmod??l?o????sh?osz?","mn??v?j???hiwtd???beo??vu???????m?m?x?s","???v????niz????p?e??????oo?b???w??x????","g???????t?liy?b?y???v??g??w??od???bx???","?y??d????ec????mqvg?t??????i???z?k?oj?d","u??n???cs?????bs??????qr?o???k?s?q????b","????w??id??????????u?k???????nw??ljs?z?","l?????z???z??fk???????zqp???w?s?m??snab","???q?????gtwuq????????kih???i????a?f?ty"}

    9

    Returns: 0

  30. {"????c????pz????????i???????????","?b????????????????????h?x??j???","????????????e?????????id??????c","????????o??????????????????????","???????????????????w???????????","n??????a?????q?????????????o???","???l?g?????????i??x?kq?????????","????f?m?????????r??????g???????"}

    6

    Returns: 0

  31. {"????","????","????","????","????","??a?","?r?b","????","????"}

    8

    Returns: 18200

  32. {"??????","??k???","??s???","?zo???","??????","???p?a","???i??","??l???","iu????","?????v","?????d","??????"}

    1

    Returns: 0

  33. {"?","?","?","?","?","w","?","?","?","?"}

    5

    Returns: 0

  34. {"??????????????v????????v???????????????????n?????"}

    1

    Returns: 178039

  35. {"???lt??????????"}

    1

    Returns: 447275

  36. {"???????????t?????"}

    1

    Returns: 281817

  37. {"??k??????qo????j????????????d???","??sw???????????????????u????????","?q???????u???????????????j?f????","?????????????????????i???????z??","?????????????b???v???g??????qte?","p??ks??????y??t????j???a????????"}

    2

    Returns: 159411

  38. {"??z?","??as","?yxs","??d?","xi??","fob?","wp??","cl?a","o?hj","u?t?"}

    4

    Returns: 0

  39. {"m????????????????????????rb????x?r???fca","??jim?q?p???p??????j??????g?d????b??????"}

    1

    Returns: 916933

  40. {"?????????????????????h???sus???v?????m???"}

    1

    Returns: 802154

  41. {"?f??????","u???????","?r??????","w???????","????????","??cw???d"}

    6

    Returns: 0

  42. {"????????????????????????b????l????????????????????","??????????ys????jr?????????????i?????????????n?h?w","?????z??????????????????u???????????????????g??i??","????????????i?????h????????d??????x????f??????????","?z???x??m????????????????????????????i???d????????","????????????????????????????????????f???????????r?","?????????f?????????k?????????????????b????????????","??????????????t?????????????????????t?????????????","????????????p???????????????????w?????????u?u?????","??t????z??????m???????????????????????????????????","?????????????????????g?????????????t???x??????????","??????????kr??nw?o????????????z????j????i?????????","???????d?????????gb????????u???ar?????????????????","????????????????????s??????q????????????l??g?????t","?e?????????????????????????????????????????x??????"}

    4

    Returns: 912233

  43. {"?????????????????????????????d????????????d?????y?","f????????????????????????m????????????????????????","??????????p???????????????????????????????e????d??","???????????????????i???????????m?t??y????z????????","???????????q??d?????????????g??????h?v?????????a??","????????????????x?b?????????????????????????r?????","?????el????????h???y?n????????????????????g???????","?????????????????????x??????m?????????????????????","???????????????????????????????????h??y?????y?????","???i???k??a??????i??v????????????a????????????????","?????????????????????f?r????????p?????????????????","?l?????????????c????????w????????????k????????????","c?????????????????????v????????????d?????c????v???","??????????????????????????????????????????????????","????j?????????a?????i???x????????????????f????????"}

    9

    Returns: 0

  44. {"g?????????ql??????h???????????????????????????m???","?????????????????????l????????????????????????????","?????????????????????w????????????????d?????ds????","???????p????????????????????????????????????????p?","??q???g??????????j?????f???????????s?o?????n??????","?????????????????????????????y?????????????????q??","???????o??????????d?v?????????????????????????????","????????????????????i?????????sc?i????????????????","???????????????????????????????????z???????qw?d???","??????????????????????????????t????????w?????????f","????????????????????t??????s??q?????q??????h??????","?????????????????????y??a??m???s??v?h??fi?????????","?m?????????????????z?????????????????zm???????????","r???nw?f??????f???????????y????????x?????k????????","??????b????????????????????j???????e??????????u???"}

    3

    Returns: 496612

  45. {"???????????????????????????????????e?????????a????","???????????????????f???????i?????dq?????????q?????","???????????????????????????????????????o??????m???","???????????????q??????????w?????????????????n?????","?????????a????k??????d???????u???????p????????????","?m??????????????????????????????????????ei????????","??k????????????????????????????????d????????????m?","??????m?????????????????????o????????????????????e","???????????e????????????o?????????????????????????","??u??????????????????????????????????x??v?????rx??","?????????i??????u?????????????p??p????u??????????u","??????????????????????????????????xo??????????????","l???????????????????????????????wx???????????k???u","??????i???e???t???????????????????????????????????","??????????n????????m??????????????r????????????x??"}

    15

    Returns: 0

  46. {"??????????????????????c???????????????????????????","????h??????????r???????????????????r??????????????","????????????????????i??????????????o??????????????","????????????????????????jh????????????????????????","?????????????s??????????????????????????????????u?","?????????e??????c??????????????g??????o????n??????","???????????????????????????ff????????????????????a","?k?????????????o?????????h????????????????????????","?????????w????????????c?????y?????????????????????","??????????????????????????????????v???????d???????","?q????????????????????a??????????????????s??????b?","????????????????ta??????????????????????????j?????","?????????????????????????????v??????????????u?????","y??????????f?????u???a?u??????????????????????????","????????????????????????????????????r?????????????"}

    9

    Returns: 758265

  47. {"?????????????????i?j????????????????????e?????????","c????f??????????????????b?i??????????v??????b?????","?????????????r????????????????ax??????????????????","??????w???????????????????????g???????????h?????v?","??????????????????????tu??????????????????????????","?jx???n???????????dg????????????????o?????????????","?????????????????????????????????????q??????????i?","?????????????????????????????p????????????????????","?????????n?????k??????????????????v???????????s???","?w??b?????????????????????????????????????????????","???????????????????????????????e???????????????zi?","?????????????z???????????????????????????x????????","?????????????????????????s????????????????????????","???????????m????????????????????????r?????????m???","??????????t???????????????????????????????????????"}

    5

    Returns: 307797

  48. {"??????????o??????????????????w??c???bt????????????","????x??????????????p????h?????????????????????????","???????n???????????????????????????????t??????????","?????????????x?t?????????????????g??a??????????x??","?????????p??????????????????????m?l???????????????","?????f????????m?ho?????????x?????o???????????????o","b??????????????a????????????????????????qg??s?????","???????????k?????m??????????????????u??q??????????","?????????????????????????????????z????????????????","??????????????????????????????????????????????r???","???????????????????????????b??????w?i??????u??????","??????????????????????????????????w???q???d???????","??????????????h?????????????????????????????d?????","???????w??????i????c?????????????????????d????????","???b???????????????p????????????????????????m?????"}

    8

    Returns: 0

  49. {"????????u????????????o??????????????????????u?????","?????g??f???????????wq????????????????????????????","???k?t???????????????g????????j????????????yn?s???","?????????????????z??????????????g?????????????????","???????u????????e?????????????????????????????????","????????????r?????????i?????k???????l?????m??d??af","?????????????????????????u??p?????????????k???????","????????????????????????????j???????r????j????????","??????????????????q????????wz????????????k???????s","??z?????j???i???????????????????????p?????????x?s?","???????????????????y??????????????????????????????","???????????????????n?????????e?????e??????????????","??????????????????????p??????????????wj???????????","??????????????t????i???t??????????????????????????","????????n???????????????????t????????????????b????"}

    1

    Returns: 731682

  50. {"??????????????????????????????????????????????l???","?????????w?????p????s????????v?i????????????????h?","??????????????????kv??????????c????????????u??????","????????o??????????????????????????????????i??????","????????xn????????????u??e???????????n??????xz????","??????tx?????????????????????????z???y????????????","???b?z??u????????ta???????????????????jd??g???????","???????????????????????w???????????????????h?????l","????????o??????x???????c?????????????????j????????","?????????w??c???????????????????????????????????s?","???v????o????????f????i????b?????????????????r????","?????t????w??y?????????????c??????u????r??t???????","??????????????????????????????????????????a???????","?w????h?????????t????????x???????????????????l????","???????o????y???x???h???b????????e???????q????????"}

    14

    Returns: 0

  51. {"m?????????????s???????????????a????p???????????q??","?????????e??????????????????k??????????????????b?u","??????????????????????????????????????????u???????","????????f???h???????????????????????????o?????t???","?????????????????????????x????????????????????????","???????????????????????w??x?????????w????j??????n?","k????????????????????????????????????????????l???q","??????????r???????????????????????????y???????????","?????????????z??????????v????????g???????mr???????","????????????????i?????????????????????????b?g?????","????????????????????????t?????????????????i?l?b???","??????????????????????w??l????????????????????????","????f?????????????????????????w???????????????????","????e?s???????q??q????h??????????????d????????????","????????????????s???????d??????????j?f????????????"}

    1

    Returns: 795984

  52. {"??dg????????i?????????????????????????????????????","???t??????????????????????c??????t????????????????","??????????????????????????????????????????????????","?????????????????j????????????????????????????g???","??z???????????????????????????????????????????i???","?????????z?g????????????????????????????????w?????","??h?????????????????p????g?d???h???????f?v????????","?????????b????????????t???????????????????????????","??????????????????m??????t????????????????????????","??????????????????????????????????????????e???????","???????b??????????????????g???????????hu??????????","??????h???????????????????o???????????????????????","??????????i????????y??????????e???????????????????","?????l????????????????????????????????????????????","????????????k????????q???????????q????????????????"}

    3

    Returns: 64602

  53. {"???bq????????g????????????????????????????????????","w?c???????????????????????????????????????????????","??????????????j????w??????????????????????????????","??????k??????????????????o????????????????????????","????x??????v?????????????s??????i?r????h??????????","???????????????????????c??????????q???????????????","????????????u????????????????w????????????????????","?ou????????????????????y???????????t??z???????????","??????b?????????????????????????i????k????????????","??????????????????????????????z???????????????????","????????????b?????????????????????????????????????","?????cc????????????????????n?????????????w????????","??????????????????????????????????????????????????","??????????????w??????????????????????????????w????","?????????????????????????????????????????????i??a?"}

    10

    Returns: 0

  54. {"??????????????????????z???????????????????????????","b???f???????????p??????????????????????????t??????","?????????????????????????f???????g??????????????y?","c?????????????????????d???????????????????????????","????w??????????????????????z??????????????????l???","??????????????????????????????????????????????????","????????????????e?????????????z?????????l??bt???f?","???????????x??????????????a????g?m????????????????","????????????????????????????????????????????ty??i?","?????????a?b?????????????????????????????????m????","???g??????l???????????????????????????????????????","????????????????????s?????????????????????????????","??????????????????????????????????????????????????","?????x???????n??????????????rk??f??????f??????????","??????????????????????????v???????????????????????"}

    9

    Returns: 845442

  55. {"?????????????????????????????????li??????r????????","?a?q?????????m?????????????????????????????xm?????","???w?r???????g??????????????c?o?????z???x?????????","?????????g??????????????????o?????????????????????","?kd?????????????????????????????????????????????m?","???????????????????????????v?f????????z?????????r?","???????l???????r????????????j????????n????????????","?f??h????????????????j??????d???w?????????????????","??????????????????????????????????????????d???????","?????????u??m??????????????????z??????????????????","????????e??h???p???????????????kr?????????????????","???????q????????????????????????????k?????????????","?????c???????????????f?????????????l????cp??x?x???","??????????????c???????????????????????????????????","????????????????k???????????????????????????????f?"}

    9

    Returns: 0

  56. {"???????k?????????????g??????????????????k????g???x","?????????dr??????????????j??????????????????????x?","??????????o?????????????????z?????????????k???????","?????????i????????????????????e??q????h???????????","??j???????s????????m??????????????????????t??m????","????????l?c???????????????????????????y???????????","??????????????s?????????????m??????o??????????????","???????????????z???m????m????????????????m????????","t????????????????????????i???j????????????????????","??????y?d????????c?????????????????y????????i?????","q?b????d????o??????????????????j?????????a?m??????","?????j??????????????y??????a??xn???????h??????????","?????????????j????j??????????????????????????yo??y","??a?????p???????????????????m??x???d??????????????","???t??????p?????????k????????????????eg???????m???"}

    2

    Returns: 240925

  57. {"???????????????h?????????i??a??????????????v?x????","????x????????t?????????c?????????????????????p???v","???????????????????e??????????????????????????????","??????s??m????????????y???????????j?h?????????????","????????????c????????????????????v??????????x?????","??em??????e????????????????????j????????n?????????","??????????????????????????c?o??s?????????????o????","?????????i???b??????????????i?????????????????????","????????????v??????p????????????y????????????d????","??????o????b????????????????b????????????k??s?????","????v????w????????????????????????????????????????","??????????k??????z?????????r??w?????u????????????j","????????g????????f??????j?????????????????????????","?????z?????l???????????????????s??n??v????????????","?????g?????????m?????f????????????????????????q?j?"}

    6

    Returns: 656923

  58. {"????????????????l?l?????????c??????q??????????????","??a???????????????????????????????r?????????????m?","???????m??????????y???????????????????????????????","???????????????a???????h??????????????????????????","??n???????zg????????g????????????a????????????????","??????t?????????????h?????????????????????????f???","??l???????????????j????l????r?????????????????????","??????????????????????????????o???????????????????","??v?????????????????????p?????????????z???????????","??a?????????????????????q???s??????????????s??u???","????d?????f???????????????????w??n?????s??????????","???????v???????????????????????t??????????????????","?????z??j??k????????????????????i?????g???????????","????????r??????????????????v??????????????????????","???i????????????w?????????????????????j???????????"}

    3

    Returns: 364838

  59. {"??????????e???????????e??????????e????????????????","??u??ao???????????????l????????????k?h????xx?????v","?????????????????????????????k?x????z?????????????","????x????y??????se?????????????????k???p?????????z","b??????f???a?????????????p?????e???????b?w????d???","???????y???????????????????????????r?h????????????","?????????????s???y??q??????????????????a??????????","??????w???????l??o????????????s??????e????????????","????????????j?k?????????j?????????????????????????","?v?????????????????n?????????????????????????k?n??","?????????k??????????????????????????sss??p???q????","????q??????o???efu????b???????????????????????????","?????????????p??????????????????????????a????????c","r?w????????????????b??p???d?????????????????????j?","????o??????????w?????????????????????y????????????"}

    6

    Returns: 357753

  60. {"????????d????????????b???????????????????????????j","?????x?????????????????????????????????????????h??","?????????????????????????????????????????????q????","??y?dm?????????????s?????????????????????ig???????","????????c??????????????y????????????????ko????????","????????????????????????????????pm??????????f??a??","??????k????v?????????????????????????????l????q???","??????????????????????w????????????g??????????a???","??k???????????????????????g??????????????????????u","???????????????s?????????????w????e?????m??s??????","??????????????????????????????????????????????????","?????q????????????????????????y??????n????????????","????x??h???????v???m?????w????????????????????????","??????????????????????c??????????????????????????p","????????????????j??????k???????r?????????????????v"}

    11

    Returns: 0

  61. {"?q???????????????????????????sa???????????r???????","????????????????????????????????c??????????z??????","????????????????a?????????????????????q???????b???","????g?????????????????????????????????????????????","???w???????????j???????n??????????v???????????????","????????????????????????e?????????????????????????","?j????????????????h???????b????????????????????g??","??????v?????????y???????????i???????e?????????????","?????q???????g??n???????????x?????????????????????","??????????e????????????????????u??????????????????","???????????????????????????????????????z??????????","????k?????????????????????????????????????????????","???????z????????????u??????????????m??????????b???","???????????????????????i???x???????????p??????????","????????t?????????????????????????????p?s????j????"}

    1

    Returns: 71422

  62. {"??????????????????k???????????????????????????????","????????????o?????????m???o?????????????????????q?","????a?????????????????????????????????????????????","??????????????t????????????o?????????k???????a???o","m?????????????p???????????????????????????????????","????d?l??e???h??????????????????w?????????????????","????????????c?????????????????????????????????????","?????????????????????x?????n???o??r???????????????","??????l???????????????????????????????????????????","??????w?????????????b????????????????b?y?k???n????","?u???????????j????????????????????????????????????","?m???????????v????????????if????????????p?????????","?????????j??m?????????????????????????????????????","?????????????????????????g?????????q???h?????????q","e?????????????????????????????????????????????????"}

    13

    Returns: 0

  63. {"????????????????????????y????w??????????????u?????","????s??????????????????l??????????????????????????","????????c?????????????????????????????????????????","??????????????????????????s???j????????????z??????","?h???????????????r?????????s?????x??????????j?????","????????????????????????m?????????????????????????","?????????????????????????????????????????n???l????","??????????????u??????????f????????????????????????","????????????v??????????????????????????????????e??","????f???????????????????????????????????w?????????","???????????????????????????n??????????????????????","????????????????????????????????????????????m?????","???w????i????????m?????????????????????????c??????","??????o?????????????g?????????????q??v????????????","?a??????f???????????????????????o??????????????y??"}

    10

    Returns: 352557

  64. {"??????????????????????????????????????????z???????","?????????????????????????b???????l??t?????????????","???????????????e???????????????p??????????????????","??k????????????f?x??????z????t????????????????????","b??????????t???????????????????????????x??????????","????c?????b?????n??t?????y???????hm???????????????","???????x??z???????????????????????lm??????????????","???p?????????????????or??????????????????t????????","y??g??o???????l????????????r????????t????????????d","??????????h????????t???????u????????y?n???i?????l?","???m???????????z???????????j????????????v?????????","??????qxc???????????n?????????????u??????v????????","????s????????????????????????????r????????????????","????z????c????d?????????????????????????????b?????","??????????f???s???c?f?????m??????????????????????o"}

    10

    Returns: 0

  65. {"??????????????????x????q????????????????????p?????","??d??????g??????????????y??????????????????r?a????","??????????????a??sv?????????????????????u?????????","??????????????????ca??????????????????????????????","????????????????????????????y???????w?????????????","????????????????????????????????????????????????t?","??????????????????????????????????????????????????","??????????????z?????????????????????????????????y?","????a??w?????????????????s???????g????????????????","??????????????????????????????????????????????????","?????????????????????p?n????????????w?????????????","?????????b???????????????r??i?????????????????????","??????????j???????n?????????????n??????????o??????","???????h??????????????????????????????????????????","????????????????????????????????????????????l?a???"}

    8

    Returns: 420047

  66. {"???????????h??????????w??????????????????????v????","???????????????k?????????????????????????????????a","???????????????gk?????????????????????????????????","????????????g????o???j?????????dv????????????t????","?????????s????r??????????????????????i??????????q?","??????????????????????????????????????????????????","??a????q??????e??????????????s???????t????????????","??????????????????????????????????n????????v???di?","???f???????????????h???????????????????????????w??","??????????????s?j??????????????????????????????c??","v????????i???????????????????????h????????????????","?????l?h??????????h???????????k??????????????d????","??i???????????????????????????????????????????????","????????????s??????????????y?f??e???o?????????????","????????????v????m????????????????????r???w?k?????"}

    8

    Returns: 0

  67. {"???????????????????????????????x???l??????????????","???????????????????c????????????????????p?????????","??????????n???h?????????????v??nb?????????????????","?s???v????????????????????????????????????????g???","?????w??????????????????i???????????m?????????????","???????g????????t???????u??j??????????y???????????","??????????????????????????????????????????????????","??????????????????????????????????????????d???????","???????m???k??????q???????????h?????????i?????????","?????p???r?????r????????????hu????????????????????","??l?????????????????????x?????????????????????s???","??????????????????????????t????????????????c???g??","???????????????????z???????????qj?????????????????","y????s??????????c????????????????????cm???????????","??????????????????????????k???????????????????????"}

    9

    Returns: 0

  68. {"????????????????????????z???bm?????p????????a?????","?k????p???m??????????????????k???????p???l?j??????","t????????????????t???????????????????c???????????o","?u??????t??e??q??d?w???????????kr?????h?????a?????","??????????????????o????g????????f????c????????????","????????z??e????????????????c?????am????q????u?s??","??????q????????????????y??????????????????????????","?????????p????????????????x?????k?j??????????a????","?????????????bxt????????v???????????????????????v?","?????????????????????????????????i?????????o????h?","?????????????xio????i??hv?????????????????????????","??o????????????????u?v?????u??????????????????????","????????????????????????fk??????????????xn????????","h????q????k????????????????????????t???????o??????","?????????????????????????????v??????y????????w????"}

    15

    Returns: 0

  69. {"????????????????u?????????????????????????????????","???????????????a??????????????????????????????????","????????????????z???????s?????????????????????????","???dq?????????????????????????????????????l???????","????????????m????????????????????????y????????????","????c???????u????????????????????n?????????????p??","????????????????????????????????????????q?????????","??????????????????????????????????????????????????","???????????????????v?????????????????????????c????","l?????i????????????j??????????b??????????????????b","?????????????????????????????????u??????????b?????","l??????????????????????h?????????????????l??v?????","??s?????????????????m????????????????????????????a","????k?????????????????????????????????n???????????","???????????c????????l??????n??????????z???b???????"}

    15

    Returns: 0

  70. {"???????l??????????????????????????????h???????????","????????????????????????????????????????i?h?q?????","??????g?????????????????????p?????????????????????","?????l??????????????????????????m???p?????????????","?????????????????e????????b????????s??????????????","????????x????i??????????????????????????y?????????","?l???????????????????????d????????????????????????","??????????f??????????????????n????????????s?u?????","??????????z???????????????????????????????????????","?????????????????????????????s????????????????????","?o????????????????????????????????????????????????","???d????sx????a??m??i?????????????????????????q???","???jw?????????????????z?????????????????t?????????","n???????????d???????????t???????????????????????g?","??????????????????????????????????????????????????"}

    9

    Returns: 891565

  71. {"??????ax?????z?s???z?????????????????????o??z?????","?o???????km???????????????????????????????g???????","??????????????????????????????o???????l???w???t??u","??????????????????????????????????????l???????????","?????a???????????????????????????????????????d????","j?????l????i???????????????????????????sl?????????","???????d???????????????????????f??d??????????x?u??","???????????????????????????a????k????????h????y???","??????s???w?????u????????j???????????????????????u","??????????l???t??????????s???sw???j????????????k??","o??????v???q??????c?????????????j??l???f??m??y??a?","????mu????????????????????j???????y??????????????k","???????????????o?????b?????????????r?y????????????","????????????d???????????????y???p??????v??????????","??????????o???????????????????????????????????????"}

    8

    Returns: 0

  72. {"a?", "?b" }

    2

    Returns: 1

  73. {"a", "b", "c" }

    1

    Returns: 3

  74. {"???????????????a??????????????????????????????????", "???????b??????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????" }

    10

    Returns: 0

  75. {"a???", "?a??", "??a?", "???a" }

    2

    Returns: 3750

  76. {"a?????", "a??b??", "??c??b", "zxcvb?" }

    3

    Returns: 676

  77. {"a?", "??" }

    1

    Returns: 650

  78. {"?", "?" }

    1

    Returns: 0

  79. {"???", "a??" }

    2

    Returns: 676

  80. {"????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????", "????????????????????????????????????????" }

    7

    Returns: 0

  81. {"??????????????????????????b???????????????", "?????????????????????????a????????????????", "?????????????????????????ab???????????????", "?d????????????????????????????????????????" }

    2

    Returns: 330597

  82. {"a??", "?b?", "??c" }

    2

    Returns: 75

  83. {"??????????????????????????????????????????????????", "ababa?????????????????????????????????????????????", "abab????a?????????????????????????????????????????" }

    2

    Returns: 477667

  84. {"??????????", "??????????", "??????????", "??????????", "??????????", "??????????", "??????????", "??????????" }

    4

    Returns: 0

  85. {"a????a", "a?????", "?????a", "abc???", "??????", "??????" }

    2

    Returns: 609145

  86. {"?????????????????????????a???", "?????????????????????????a???", "??????c??????????????????a???", "????????d????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "???????e?????????????????a???", "?????????q???????????????a???" }

    5

    Returns: 0

  87. {"a?c", "a?d", "???", "??c" }

    2

    Returns: 676

  88. {"?a???a???????b????????a???a???????b????????????", "a?????????a????a??????a????a???a???????b??????c", "a????a?????????????????????a???a????b??????????", "???????????????????????????????????????????d???" }

    2

    Returns: 448817

  89. {"??", "??", "??" }

    2

    Returns: 0

  90. {"?????" }

    1

    Returns: 881343

  91. {"?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????", "?????????????????????????????????????" }

    8

    Returns: 0

  92. {"???????????????????????????????????a??????????????", "?????????????????a??????????b?????????????????????", "??????????????????????????????????????????????????", "???????????????e??????????????????????????????????", "??????????????????????????????????????????????????", "????????????????????????????bb????????????????????", "????????????????????????????bb????????????????????", "??????????we????????????????bbb???????????????????", "????????????????????????????????????????cd????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "???????????????????????????????????a??????????????", "????????????????????????????b?????????????????????", "??????????????????????????????????????????????????", "????????????????????????????b??????a??????????????" }

    11

    Returns: 39398

  93. {"?????", "??a??", "bb???", "?????", "?????" }

    2

    Returns: 0

  94. {"??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????" }

    10

    Returns: 305987

  95. {"???????????????????????????????" }

    1

    Returns: 676280

  96. {"a?c", "abc" }

    1

    Returns: 25

  97. {"b??", "b?b", "bc?" }

    2

    Returns: 50

  98. {"????", "????", "????", "????", "????", "????", "????", "????", "????", "????", "????", "????", "????", "????", "????" }

    7

    Returns: 0

  99. {"a?", "a?", "a?", "aa" }

    1

    Returns: 0

  100. {"abc?", "a?cd" }

    1

    Returns: 50

  101. {"??a??", "?b???", "??c??", "?????", "?????", "???ae" }

    2

    Returns: 529970

  102. {"??????????????????????????b???????????????", "?????????????????????????a????????????????", "?????????????????????????ab???????????????", "?d????????????????????????????????????????", "c?????????????????????????????????????????", "cd????????????????????????????????????????" }

    2

    Returns: 20377

  103. {"??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????" }

    8

    Returns: 0

  104. {"??????????????????????????????????????????????????" }

    1

    Returns: 305987

  105. {"aca???bc????ccd??aaazaaacd?", "ac???cdwaaazaaacd?aazaaacd?", "?c???cdwaaazaaacd?aazaa?cd?", "ac???cd??aazaa?cd?aazaa?cd?", "?????cd??aaeaa?cd?aazaa?cd?", "?c???cd??aazca?cd?aazaa?cd?", "ac???cd??aazaa?cd?aazaa??d?", "?c???cd??aazaa?cd???zaa?cd?", "ab???cd??a?zaa?cd?aazaa?cd?", "bc???cd??aazaa?cd?aazaa?ce?", "gc???cd??aa?aa?cd?aazaa?cd?", "gc???cd??aazaa?cd?aa?aa?cd?" }

    3

    Returns: 951332

  106. {"abc", "abc", "???", "???" }

    2

    Returns: 17575

  107. {"a???b??ed???eda???b??ed???eda???b??ed???ed", "a?d?b?d?d?b?e?a?d?b?d?d?b?e?a?d?b?d?d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?", "a???b???d?bfe?a?d?b?d?d?b?e?a?d?b???d?b?e?" }

    2

    Returns: 727880

  108. {"?ab", "?bb", "?ac", "?bc" }

    2

    Returns: 0

  109. {"?ca?", "a?a?", "bbc?" }

    1

    Returns: 1326

  110. {"a?b", "ab?", "???" }

    3

    Returns: 1

  111. {"z?", "?a", "?b", "y?" }

    2

    Returns: 4

  112. {"ab?", "abc" }

    1

    Returns: 25

  113. {"??????????????????????????????", "??????????????????????????????", "??????????????????????????????", "??????????????????????????????", "??????????????????????????????", "??????????a????v????a?????????", "??????????a???a???????????????" }

    4

    Returns: 0

  114. {"?????????????????????????a???", "?????????????????????????a???", "??????c??????????????????a???", "????????d????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "?????????????????????????a???", "???????e?????????????????a???", "?????????q???????????????a???", "?????????j???????????????a???", "w????a???q???????????????a???", "?????????q?????r?????????a???" }

    7

    Returns: 0

  115. {"a??", "??b", "???" }

    1

    Returns: 16250

  116. {"??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "???????????????????????d??????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????", "??????????????????????????????????????????????????" }

    14

    Returns: 101910

  117. {"a??????????????", "?b?????????????", "??c????????????", "???d???????????", "????e??????????", "?????f?????????", "??????g????????", "???????h???????", "????????i??????", "?????????j?????", "??????????k????", "???????????l???", "????????????m??", "?????????????n?", "??????????????o" }

    1

    Returns: 928332

  118. {"a???b??c???d??", "a??b???c??????", "a??????c??????", "a?????????????", "??????????????", "???????????d??" }

    4

    Returns: 905134

  119. {"???", "???", "???" }

    2

    Returns: 0

  120. {"??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????", "??????????????????????????????????????????" }

    10

    Returns: 731111

  121. {"???", "???", "???", "???" }

    2

    Returns: 0

  122. {"hk?????ed????x?wb???????osq?rjqdj??skrei??ra??j?x?", "mh??o??g?vn?kc???????arap???qk??cu??iu??ovrykzqrlf", "k?k?xtljrqa????m?ejijyt?t?tox?ctaer?u?f?a?xhe???y?", "?ez?????qu?h?y?ngnt?b?g?p?l?lpx?d?gd????kxhz?vpqo?", "???????xhs?fnlhbfhwwdotvwalvoa??e?l?klqv?z?o?sfbb?", "fwcvlqorqf??ulcs?e?gdhib?ab?rd?qv??smqkv?ak?b?q?cu", "hxhyxr??swrwof???gsx?fe?w????n?sl?esfk???pnog???jf", "?d?cv?w?liu?ub???et??cde?da?es?m???dl?c?qe?b?wjyna", "julhhyzxdldwvk?rq?zpler????zphuporho?dj?semb???jz?", "?y???tiwmzapg??u?clefpmnkr??aau?c?ezh?n??v?vqjumda", "?ir??azg??jag?t?tqvvyhzvyvncpb???n?wvg?v??jfxs?eqx", "?zmmc?mlqubsvvr?qoftow??ua?fwo?xf?lkpefjo?w?bllb?l", "hznel??b?vfc???uei?rurkb???ujm?hz?z?kjsbnqwjot?ft?", "t??ixg??ywpp??jdlbjn????aq??do?ehcd?d?vys??hnu?psl", "ps?ofh??yaofmyvdnyd?oo???ml?u?yg?z?nqha?wi?qqaximj" }

    8

    Returns: 0

  123. {"a?b", "a?b", "aab" }

    2

    Returns: 25

  124. {"aaaaa", "?????" }

    1

    Returns: 881342


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: