Statistics

Problem Statement for "ChangingString"

Problem Statement

You are given two Strings A and B that have the same length and contain only lowercase letters ('a'-'z'). The distance between two letters is defined as the absolute value of their difference. The distance between A and B is defined as the sum of the differences between each letter in A and the letter in B at the same position. For example, the distance between "abcd" and "bcda" is 6 (1 + 1 + 1 + 3).

You must change exactly K characters in A into other lowercase letters. Return the minimum possible distance between A and B after you perform that change.

Definition

Class:
ChangingString
Method:
distance
Parameters:
String, String, int
Returns:
int
Method signature:
int distance(String A, String B, int K)
(be sure your method is public)

Constraints

  • A and B will each contain between 1 and 50 characters, inclusive.
  • K will be between 1 and the length of A, inclusive.
  • A and B will contain the same number of characters.
  • A and B will contain only lowercase letters ('a' - 'z').

Examples

  1. "ab"

    "ba"

    2

    Returns: 0

    The minimum distance (equal to 0) can be achieved when we change 'a' to 'b' and 'b' to 'a'.

  2. "aa"

    "aa"

    2

    Returns: 2

    We must change both letters 'a' to some other letters. Changing them to 'b' results in the smallest distance.

  3. "aaa"

    "baz"

    1

    Returns: 1

  4. "fdfdfdfdfdsfabasd"

    "jhlakfjdklsakdjfk"

    8

    Returns: 24

  5. "aa"

    "bb"

    2

    Returns: 0

  6. "xuhpjidxepnmkllyqewfypbicxwhosihrjeqmolcchyqfaoof"

    "cukbhecbdllpmpfmaxjkindzggjgiazmvcqpfbchfqhtxshmx"

    32

    Returns: 36

  7. "cjvdejraxtpvv"

    "pdqbwxbihxnmu"

    11

    Returns: 3

  8. "rruktgimfhtucub"

    "phdyzkmmodrdypj"

    13

    Returns: 2

  9. "gctetkofsogbaowrote"

    "nypcvhpwgtgdxzjyyus"

    13

    Returns: 8

  10. "cjviumyluukooirqpmiwfuicakgrvvrxmtavbnoo"

    "hrslxpnknejtdxwtqoaexsegcqzsccitfonlpxej"

    31

    Returns: 16

  11. "qbpufutmanhkfdspzfxqqygygetufqhuzum"

    "zpmlodywiqhsahydcqligquutydgrzjamec"

    11

    Returns: 177

  12. "komxbzwuntbdeyaqkdlovctdmvjmkejaekqcykwlvbrnckxee"

    "fmomwhuoobnmspacwadtyeuqdtbeksabuxgtojkwpjdevhodg"

    20

    Returns: 125

  13. "bchxsxqdfsrqargrnumqgnsbunkggpkwmgladjcsvq"

    "ebkbqacubfjyryouyhtgzzsmbfcdbocthqekneefll"

    30

    Returns: 30

  14. "ixsxbupspgfht"

    "ebvjcpcwjaudy"

    7

    Returns: 21

  15. "boxacdyvwdrnzchsdfdvskebolpdbhvjjtwzumng"

    "dplbqhkdjoeuksvgplarcorrddszibxejjilkxwa"

    10

    Returns: 220

  16. "fyxlulzv"

    "cqjrjhca"

    2

    Returns: 46

  17. "ricmkdaqatyykbxebbrppckrcpgsqihjikkpmqrjzggjjcczii"

    "qrjysnugfqepyaxcvntutexfmzivjpwbdtkdnuuhxeykmhtbao"

    34

    Returns: 27

  18. "mtphpjfablhhmpiaueemafwdkmlvpxjppz"

    "olnowgriiveqnfejrgphrcalmpoqhiszao"

    11

    Returns: 112

  19. "fbs"

    "wns"

    3

    Returns: 1

  20. "uhufgdqwxedbmattu"

    "vqxmywvxophecljne"

    8

    Returns: 39

  21. "qjumutuzhputgkgtztfumkdoowdkeoknjhummwultpngxrnyi"

    "qldhneykwjcblpevqsdxdkghpnssyyzdaiyqffpavhjyjfmzt"

    14

    Returns: 167

  22. "wweqzsuthwzmkcsvtslfbphvgnzcdbqigrngdxqpetjg"

    "vmoazgsponlpkhjwxhhuaekhybdctzbixxxwmhvwixbg"

    34

    Returns: 8

  23. "kztqosdnchhfhpvowcqowoyxyiqkjijmx"

    "xosplcwspdaryewfogeznvgluecqjujdc"

    11

    Returns: 127

  24. "mrqvhhtztnwqqnmpvytabfkciikqfyfmwkcovxjprmqasa"

    "vhmtvktxhjbrwbgjykxzmgxrfelqgxdhqdwsyvpzbcyylp"

    2

    Returns: 304

  25. "jodxanidmdfo"

    "uunxmclmqfmt"

    9

    Returns: 5

  26. "pqlclarsgdeisrgjjpkgmlauurggtqcjeqqgoorigoi"

    "mhhkhgichkagkfclddhccdbhkekgcmnejjnlggankmk"

    4

    Returns: 223

  27. "ndkbmaolmfdccmbjeojjdmfjjdlbddglffeheldcjhh"

    "pgcouhjstqdudaglhcuobtfgrdspeuiceakrdmnkshp"

    29

    Returns: 16

  28. "defedbbefdbeadcfbeaefdbfbe"

    "aachhjdjackahjjbhjedcjjhgk"

    1

    Returns: 112

  29. "cefeaacbdcaabeceaebcdcbbbadccaaaceb"

    "aqomghqncgljlikfkoaanbcfomhkeblfoln"

    15

    Returns: 77

  30. "fjdkhkhriceeocckdlneloccrrakkn"

    "wtfckfvzhnzswyfyoaptbyusuottzj"

    25

    Returns: 11

  31. "nwjerwycjbllvjfsgn"

    "afacefceabeffebbag"

    11

    Returns: 25

  32. "cndfnngcghgfebldfkeddhklec"

    "cdaabbbbddbdbbcccdbbcbdbad"

    19

    Returns: 6

  33. "coaolicefhaiglboh"

    "abaabbbabbbbababa"

    1

    Returns: 92

  34. "dqlalimglockrhmimmmqhldfsn"

    "fblpnqgrfsrlwehhcbukadgxfb"

    16

    Returns: 26

  35. "iag"

    "edc"

    2

    Returns: 3

  36. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

    "bbbabbbbabbbaabaaaabbbbaabaabba"

    1

    Returns: 17

  37. "gebdcedf"

    "dbaceaab"

    2

    Returns: 13

  38. "nathaicbkoniiualcncpmmehkpigoieglobktcempe"

    "edcaacebfebcbfedcfcafbbcdbefebadfecafdfbde"

    7

    Returns: 177

  39. "ihpatoiltegbnuqhgbkrbheebjfcahmdsbug"

    "dddfcbbaacfacaaaccedecaeddcfbbeeabea"

    8

    Returns: 125

  40. "cdacdabdeecaaaedaedd"

    "eicfffechhbibbeihfib"

    9

    Returns: 16

  41. "adbiihdedghjifecjicgfaiheffccjgjfjcg"

    "kefgedbdfgdidhdacbbfdbdecdkggcjcighk"

    17

    Returns: 32

  42. "mdcskfrgskjatgksfqjuflcjflqgsrdcg"

    "rkssfiasiilabfaeehetmqafldlchhhtf"

    20

    Returns: 25

  43. "hfgsbdrehoonfqbrllqdhci"

    "cijtcaaabcbtnlzgkbbdgfr"

    14

    Returns: 16

  44. "aabbecddaaccdcaab"

    "ldjjfacgnilaflllf"

    9

    Returns: 18

  45. "lbccmhnbb"

    "deaebeadd"

    1

    Returns: 33

  46. "aaaabcd"

    "aabcaaa"

    6

    Returns: 1

  47. "asdfqqerereqwer"

    "asveqqregreqwer"

    8

    Returns: 3

  48. "asdfqqerereqwer"

    "asveqqregreqwer"

    5

    Returns: 0

  49. "asdfqqerereqwer"

    "asveqqregreqwer"

    10

    Returns: 5

  50. "az"

    "az"

    2

    Returns: 2

  51. "ac"

    "ad"

    2

    Returns: 1

  52. "aaaa"

    "zzzz"

    1

    Returns: 75

  53. "asdhashdkjd"

    "aejqwkehqcn"

    4

    Returns: 34

  54. "baa"

    "aaa"

    3

    Returns: 2

  55. "aa"

    "aa"

    2

    Returns: 2

  56. "aaaa"

    "aaaa"

    2

    Returns: 2

  57. "zzzzzz"

    "aaasdc"

    2

    Returns: 77

  58. "ab"

    "aa"

    2

    Returns: 1

  59. "a"

    "a"

    1

    Returns: 1

  60. "aaa"

    "xzx"

    2

    Returns: 23

  61. "aaa"

    "aza"

    2

    Returns: 1

  62. "aa"

    "az"

    2

    Returns: 1

  63. "aab"

    "aaa"

    2

    Returns: 1

  64. "aaaaa"

    "aaaaa"

    3

    Returns: 3

  65. "aaa"

    "aaz"

    3

    Returns: 2

  66. "abc"

    "bba"

    3

    Returns: 1

  67. "aa"

    "aa"

    1

    Returns: 1

  68. "abc"

    "aba"

    2

    Returns: 1

  69. "ab"

    "ab"

    1

    Returns: 1

  70. "aab"

    "aac"

    3

    Returns: 2

  71. "cccccc"

    "cccccc"

    4

    Returns: 4

  72. "ab"

    "ab"

    2

    Returns: 2

  73. "abc"

    "abd"

    2

    Returns: 1

  74. "bcda"

    "aaaa"

    1

    Returns: 3

  75. "a"

    "m"

    1

    Returns: 0

  76. "zzaz"

    "zzcz"

    4

    Returns: 3

  77. "zza"

    "zzc"

    3

    Returns: 2

  78. "aaaaaaaaaa"

    "aaaaaaaaaa"

    4

    Returns: 4

  79. "aaaaaaaa"

    "aaaaaaaa"

    8

    Returns: 8

  80. "fdfdfdfdfdsfabasd"

    "jhlakfjdklsakdjfk"

    8

    Returns: 24

  81. "aaa"

    "baz"

    1

    Returns: 1

  82. "aaaaaaaaaabbb"

    "aaaaaaaabbbbb"

    7

    Returns: 5

  83. "aad"

    "afd"

    2

    Returns: 1

  84. "ba"

    "aa"

    2

    Returns: 1

  85. "aaab"

    "aaaa"

    2

    Returns: 1

  86. "aaaa"

    "zzzz"

    2

    Returns: 50

  87. "cdefg"

    "avcde"

    1

    Returns: 8

  88. "aaaaacc"

    "aaaaabb"

    4

    Returns: 2

  89. "aaaa"

    "aaad"

    2

    Returns: 1

  90. "aaa"

    "aaa"

    3

    Returns: 3

  91. "aaa"

    "aab"

    3

    Returns: 2

  92. "abcde"

    "abcde"

    5

    Returns: 5

  93. "z"

    "x"

    1

    Returns: 0

  94. "aabbc"

    "aabbd"

    3

    Returns: 2

  95. "aaaaaab"

    "aaaaaac"

    2

    Returns: 1

  96. "aaa"

    "aab"

    2

    Returns: 1

  97. "aaaa"

    "aaaa"

    3

    Returns: 3

  98. "aaaaa"

    "aaaab"

    3

    Returns: 2

  99. "aaaaaaaaa"

    "aaaaabbbb"

    7

    Returns: 3

  100. "aaaaaaaaaaaaaaaaaaaaaaaaaaa"

    "zzzzzzzzzzzzzzzzzzzzzzzzzzz"

    3

    Returns: 600

  101. "zz"

    "zz"

    1

    Returns: 1


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: