Statistics

Problem Statement for "VariableAddition"

Problem Statement

You will be given a String, eq, representing some simple addition. It will be formatted as a sequence of terms separated by single plus signs. Each term will be either an integer between 0 and 1000, inclusive, or a sequence of lowercase letters, representing a variable. The values of all the variables in eq will be given in a String[], vars, each element of which will be formatted as "VARIABLE VALUE". You should return the sum represented by eq.

Definition

Class:
VariableAddition
Method:
add
Parameters:
String, String[]
Returns:
int
Method signature:
int add(String eq, String[] vars)
(be sure your method is public)

Constraints

  • eq will be formatted as described in the problem.
  • eq will contain at least one plus sign.
  • eq will contain between 3 and 50 characters, inclusive.
  • Each element of vars will be formatted as "VARIABLE VALUE", where VARIABLE is a sequence of lowercase letters and VALUE is an integer between 0 and 1000, inclusive.
  • None of the integers in the input will have extra leading zeros.
  • Each variable in eq will be present in vars.
  • Each variable in vars will be present in eq, and no variable will occur more than once in vars.
  • Each element of vars will contain at most 50 characters.

Examples

  1. "1+2+3"

    {}

    Returns: 6

  2. "a+aa+aaa"

    {"a 1","aa 2","aaa 1"}

    Returns: 4

  3. "1+3+a+xyz+33+num+num"

    {"a 999","xyz 0","num 11"}

    Returns: 1058

  4. "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa+1"

    {"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 2"}

    Returns: 3

  5. "a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y"

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

    Returns: 26

  6. "a+a+b"

    {"a 2","b 1"}

    Returns: 5

  7. "693+knqjwevhme+knqjwevhme"

    {"knqjwevhme 422"}

    Returns: 1537

  8. "678+141+896+874+kogsf+llnqthetl+886"

    {"kogsf 981","llnqthetl 725"}

    Returns: 5181

  9. "216+230+333+543+297"

    {}

    Returns: 1619

  10. "576+80+542+762+172"

    {}

    Returns: 2132

  11. "gp+667+11+572+gp+685+508+lr+96+lr+832+721+ibp+10"

    {"gp 877","lr 693","ibp 399"}

    Returns: 7641

  12. "800+317+901+459+606+162+702+229"

    {}

    Returns: 4176

  13. "aaaaaaaaa+aaaaaaaaa+aaa+aaaa+aaaa+aaaa"

    {"aaaaaaaaa 647","aaa 284","aaaa 170"}

    Returns: 2088

  14. "733+709+446+614+417"

    {}

    Returns: 2919

  15. "127+137+i+i+hakie+921+akkckeabd+akkckeabd"

    {"i 357","hakie 213","akkckeabd 128"}

    Returns: 2368

  16. "733+mukluv+802+vsjhrveq+422+nniv"

    {"mukluv 637","vsjhrveq 318","nniv 951"}

    Returns: 3863

  17. "cb+288+dfdee+ac+dfdee+d"

    {"cb 668","dfdee 311","ac 183","d 395"}

    Returns: 2156

  18. "gdef+hd+afecbagage"

    {"gdef 566","hd 726","afecbagage 480"}

    Returns: 1772

  19. "abb+ca+ccaca+bcccacbc+bbbc+abcaacaaba"

    {"abb 125","ca 892","ccaca 966","bcccacbc 56","bbbc 831","abcaacaaba 329"}

    Returns: 3199

  20. "919+jmld+c+jmld+ckhgb+lbejdiihim"

    {"jmld 701","c 433","ckhgb 360","lbejdiihim 789"}

    Returns: 3903

  21. "olq+233+olq+838+olq+olq+olq+888+135+224+104"

    {"olq 154"}

    Returns: 3192

  22. "473+962+559+775+950+soblpfj"

    {"soblpfj 736"}

    Returns: 4455

  23. "ahpie+279+nmjnaqj+ahpie"

    {"ahpie 335","nmjnaqj 155"}

    Returns: 1104

  24. "bfce+307+bfce+894+ccbecbccf"

    {"bfce 554","ccbecbccf 374"}

    Returns: 2683

  25. "277+cedcdaec+906+cedcdaec+ccdabcecc+fbccfeaa+aed"

    {"cedcdaec 876","ccdabcecc 556","fbccfeaa 501","aed 743"}

    Returns: 4735

  26. "199+690+443+982+511+974+821"

    {}

    Returns: 4620

  27. "583+172+788+480+598+22+368+523"

    {}

    Returns: 3534

  28. "gddl+lidll"

    {"gddl 3","lidll 282"}

    Returns: 285

  29. "78+609"

    {}

    Returns: 687

  30. "bdbcbcc+981+dcbdabc+587+bdbcbcc+b"

    {"bdbcbcc 750","dcbdabc 868","b 244"}

    Returns: 4180

  31. "844+393+61+832+829+580+628"

    {}

    Returns: 4167

  32. "463+738+233"

    {}

    Returns: 1434

  33. "901+rdmma+306+rdmma+rdmma+rdmma+329+520+rdmma"

    {"rdmma 662"}

    Returns: 5366

  34. "352+459+385+773+152+ejfsiauj+ejfsiauj"

    {"ejfsiauj 483"}

    Returns: 3087

  35. "954+deedfed+g+g+deedfed+g+981+deedfed"

    {"deedfed 726","g 286"}

    Returns: 4971

  36. "598+cbfacecab"

    {"cbfacecab 724"}

    Returns: 1322

  37. "ee+ceeebabc+eebfb"

    {"ee 837","ceeebabc 476","eebfb 171"}

    Returns: 1484

  38. "gddd+dba+gddd+144+dba+gddd+156+fh+dba"

    {"gddd 523","dba 618","fh 849"}

    Returns: 4572

  39. "kbgcjkcadg+463+acae+ffff"

    {"kbgcjkcadg 583","acae 166","ffff 497"}

    Returns: 1709

  40. "679+304+indsbw+indsbw+98"

    {"indsbw 790"}

    Returns: 2661

  41. "b+acffebg+efd+afbffbfa"

    {"b 166","acffebg 147","efd 979","afbffbfa 350"}

    Returns: 1642

  42. "aedadfdbcd+aedadfdbcd+b+fcd"

    {"aedadfdbcd 34","b 385","fcd 982"}

    Returns: 1435

  43. "217+9+196+510+46+208+292+977+962"

    {}

    Returns: 3417

  44. "52+366+851+573+gjfa+ifidiadfa+fabbedhia"

    {"gjfa 145","ifidiadfa 100","fabbedhia 31"}

    Returns: 2118

  45. "dcddcaccd+dcad+dcddcaccd"

    {"dcddcaccd 470","dcad 605"}

    Returns: 1545

  46. "efe+dd+837"

    {"efe 513","dd 173"}

    Returns: 1523

  47. "434+483+jiompft+664+jiompft+jiompft+jiompft"

    {"jiompft 434"}

    Returns: 3317

  48. "bfde+fegehhhcf+bfde+bfde+bfde+fegehhhcf+242"

    {"bfde 618","fegehhhcf 293"}

    Returns: 3300

  49. "8+262+678+163+842+396+574+648+275+403+j+j+697+858"

    {"j 305"}

    Returns: 6414

  50. "bgabgeef+effefc"

    {"bgabgeef 690","effefc 579"}

    Returns: 1269

  51. "audkdkk+874+993+audkdkk+audkdkk"

    {"audkdkk 16"}

    Returns: 1915

  52. "454+63+768+aefedcffc+659+gcdcbec+fcfcbab"

    {"aefedcffc 206","gcdcbec 127","fcfcbab 783"}

    Returns: 3060

  53. "aaabbababb+aabab+aaabbababb+661+aaabbababb"

    {"aaabbababb 612","aabab 973"}

    Returns: 3470

  54. "cnhggbljia+530+cnhggbljia+502"

    {"cnhggbljia 536"}

    Returns: 2104

  55. "a+654+cbfjcfiiba+ajgj+jdaag"

    {"a 56","cbfjcfiiba 431","ajgj 794","jdaag 672"}

    Returns: 2607

  56. "757+mjoggkqjgg"

    {"mjoggkqjgg 189"}

    Returns: 946

  57. "akehjgc+dihf+dihf+figbla+897"

    {"akehjgc 814","dihf 747","figbla 570"}

    Returns: 3775

  58. "120+891+567+351"

    {}

    Returns: 1929

  59. "omdenincm+362+16+357"

    {"omdenincm 102"}

    Returns: 837

  60. "733+413+50+163+71+90"

    {}

    Returns: 1520

  61. "752+492+484+466+754"

    {}

    Returns: 2948

  62. "aaaacabbac+ababac+ababac+cab+bb+b+ababac+babca"

    {"aaaacabbac 285","ababac 372","cab 860","bb 386","b 387","babca 704"}

    Returns: 3738

  63. "cedefafafc+975+fbbddcae+e+e"

    {"cedefafafc 542","fbbddcae 494","e 945"}

    Returns: 3901


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: