Statistics

Problem Statement for "LuckyRemainder"

Problem Statement

Little Arthur loves numbers and 9 is his most favorite. When encountering a number, he always calculates its lucky remainder - the remainder after division by 9.

This time Arthur is given a number X of length N which contains no zeros. He is asked to find the supersum of X: super(X).

super(X) is defined as follows. For a given non-full set S of digit positions in X we erase the digits in these positions to obtain a sub-number. For example, if X = 12345 and S = {2, 4} we erase 2nd and 4th digits and obtain a sub-number 135. Supersum of X is simply the sum of sub-numbers for all valid sets S.

For example, if X is 123, then super(X) = 123 + 12 + 13 + 23 + 1 + 2 + 3 = 177.

Calculating super(X) is very difficult for Arthur. However, before getting to work he is wondering if it is possible to quickly tell what the lucky reminder of the supersum of X is. You have to help him.

Given String X, which contains the decimal representation of the number X, return super(X)'s lucky remainder.

Definition

Class:
LuckyRemainder
Method:
getLuckyRemainder
Parameters:
String
Returns:
int
Method signature:
int getLuckyRemainder(String X)
(be sure your method is public)

Constraints

  • X will contain between 1 and 50 characters, inclusive.
  • Each character of X will be one of the following: '1', '2', '3', '4', '5', '6', '7', '8', '9'.

Examples

  1. "123"

    Returns: 6

    Example from the problem statement. super(123) = 177, which gives remainder 6 after division by 9.

  2. "24816"

    Returns: 3

    Supersum of 24816 is 43986.

  3. "8"

    Returns: 8

  4. "11235813213455"

    Returns: 7

    Supersum is 43950094900477.

  5. "9"

    Returns: 0

  6. "99999999999999999999999999999999999999999999999999"

    Returns: 0

  7. "1"

    Returns: 1

  8. "2"

    Returns: 2

  9. "3"

    Returns: 3

  10. "4"

    Returns: 4

  11. "5"

    Returns: 5

  12. "6"

    Returns: 6

  13. "7"

    Returns: 7

  14. "11"

    Returns: 4

  15. "9999999999999999999999999999999999999991"

    Returns: 8

  16. "9999929999999999999999999999999999999999"

    Returns: 7

  17. "9999999999999999999399999999999999999999"

    Returns: 6

  18. "9999999994999999999999999999999999999999"

    Returns: 5

  19. "9999999999999999999999999995999999999999"

    Returns: 4

  20. "6999999999999999999999999999999999999999"

    Returns: 3

  21. "9999999999979999999999999999999999999999"

    Returns: 2

  22. "9899999999999999999999999999999999999999"

    Returns: 1

  23. "999999999999999999999999999999999999999"

    Returns: 0

  24. "98888989888988998987989879899988988"

    Returns: 1

  25. "11111111111111111111111111333333333333"

    Returns: 7

  26. "1123581321345589144233377"

    Returns: 5

  27. "999897969594939291898887868584838281"

    Returns: 0

  28. "65666618966677342548732851572773434138187554434768"

    Returns: 2

  29. "48185527832945364931651138578613131358858995384721"

    Returns: 5

  30. "11575127558417264466259919653661748693365469259413"

    Returns: 0

  31. "99274656623859953846722247153412613467552731944193"

    Returns: 4

  32. "77136112127235921648558112237776897142248271488163"

    Returns: 2

  33. "97323888492537212225247967411715613647753761637543"

    Returns: 1

  34. "13813612135199437938117169828289374929124759661548"

    Returns: 5

  35. "65451981174647141752359334541782993573259224241924"

    Returns: 7

  36. "62618252422488287228616168816713425551749893634399"

    Returns: 1

  37. "26223355936593279766461978894118137596196238295883"

    Returns: 0

  38. "766499475156864773264843737646436243253761418"

    Returns: 1

  39. "3261775314426215543683637521964254236596623648661"

    Returns: 8

  40. "2754446176633784378123818337721327135944324348"

    Returns: 4

  41. "21127878882183392137415774248156751585291"

    Returns: 2

  42. "5557595556821759778549689419961925812145661334484"

    Returns: 6

  43. "83641848281652286353698374548982946371592173332259"

    Returns: 8

  44. "8552168648945771964868162178742453651397"

    Returns: 8

  45. "537599433214998822972883678539148485441316763"

    Returns: 5

  46. "9375132931216952933732193429449377453875757671526"

    Returns: 1

  47. "319233411427166848324456267252955617185225549"

    Returns: 6

  48. "3476245768781176948432366133474886131627"

    Returns: 7

  49. "287815239958516622732799852162466"

    Returns: 7

  50. "18622792224793116752348482189448572521"

    Returns: 0

  51. "76348959879927448615167648"

    Returns: 0

  52. "9378421267681244947995179853797"

    Returns: 2

  53. "156439785458933177328886528848292439679465596"

    Returns: 5

  54. "958945193682947154114125937597128184"

    Returns: 3

  55. "26688553682267978331513527563815391717"

    Returns: 8

  56. "965558779234943426531626756"

    Returns: 7

  57. "83815559717182398782621861245554685"

    Returns: 1

  58. "238374411896269687141"

    Returns: 4

  59. "9524132949699645447832367282773934166144"

    Returns: 0

  60. "695798178381498947596959441152"

    Returns: 1

  61. "72141619721"

    Returns: 8

  62. "8156591298724581264429451315946565"

    Returns: 0

  63. "5245915686464797558335413391191998"

    Returns: 5

  64. "5327419211151225541898"

    Returns: 4

  65. "73441158977919588981"

    Returns: 3

  66. "393969852216313"

    Returns: 1

  67. "52538669"

    Returns: 7

  68. "111111111"

    Returns: 0

  69. "99999999999999999999999999999999999999999999"

    Returns: 0

  70. "28374982789173741723572198759817287289347598229549"

    Returns: 8

  71. "2222222222222222222222222222222222222"

    Returns: 2

  72. "123456789123456789123456789123456789123456789"

    Returns: 0

  73. "33333456783433345678333334567233333456783333345678"

    Returns: 8

  74. "99888888889988888888998888888899888888887988888888"

    Returns: 6

  75. "98978959112358132134551123581321345511235813213455"

    Returns: 5

  76. "123345676543276543543"

    Returns: 1

  77. "444444444444444444444444444444444444444444443"

    Returns: 5

  78. "11111198789111119878911111987891111198789111198789"

    Returns: 1

  79. "6721354326476231463278146173264732164"

    Returns: 5

  80. "46513246527465132465274651324652746513246527465132"

    Returns: 6

  81. "11111111111111111111111111111111111111111111111111"

    Returns: 1

  82. "654651651616516165165161616"

    Returns: 4

  83. "1234567891123456789112345678911234567891"

    Returns: 5

  84. "12345678911234567891123456789112345678911234567892"

    Returns: 3

  85. "12345678765432123456789876543234567877654321567896"

    Returns: 0

  86. "77777777777777777777777777777777777777777777777777"

    Returns: 7

  87. "92345678911234567891123456789112345678911234567891"

    Returns: 8

  88. "5252656585555655554545782457245755462474894684954"

    Returns: 1

  89. "9999999999999999999999"

    Returns: 0

  90. "46723467234672346723467234672346723467234672346723"

    Returns: 8

  91. "12315467486768465468494984946546478676965454"

    Returns: 2

  92. "78978978967897897896789789789678978978967897897896"

    Returns: 6

  93. "123456789912345678991234567899123456789811"

    Returns: 5

  94. "5415563216541653154653151656151"

    Returns: 0

  95. "88888888888888888888888888888888888888888888888"

    Returns: 4

  96. "12345678913415646165169416511546616165413215467896"

    Returns: 2

  97. "4444444444444444444444444444444444444444444444444"

    Returns: 7

  98. "999999999988888888754321777765432359981235678564"

    Returns: 4

  99. "1111111111111111111111111111111111111111111111111"

    Returns: 4

  100. "11111111111111111111111111111111111111111111113"

    Returns: 1

  101. "13432423425455464564564574546545645645643534334344"

    Returns: 1

  102. "11235813213455112358132134551123581321345511235813"

    Returns: 6

  103. "89875755232171557615673158677717673837742186949589"

    Returns: 0

  104. "15145415641541641658415145634151213"

    Returns: 6

  105. "12345678912345678912345678912345678912345678912345"

    Returns: 3

  106. "1234567891234567891234567891234567891"

    Returns: 1

  107. "89794564649879845613231549887945646131231489462"

    Returns: 1

  108. "88888888888888888888888888888888888888888888888888"

    Returns: 8

  109. "97847837845845687623587462387648723648726348762348"

    Returns: 5

  110. "1231231231231231231231213231231231232"

    Returns: 2

  111. "123123433245434534245345345345234234114567889"

    Returns: 5

  112. "12325283749123252637491232586374912325263749"

    Returns: 8

  113. "234567123363636371823123712312312312312388585"

    Returns: 5

  114. "5555555555555555555555555555555555555555555552"

    Returns: 7

  115. "69182342666918234266691823426669182342666918234266"

    Returns: 2

  116. "11111111154545454545454545454554545445454545454545"

    Returns: 1

  117. "94831572846453897392515394792275764345922852815538"

    Returns: 2

  118. "123456789123456789123456789123456789123456789123"

    Returns: 3

  119. "1123581321345511111"

    Returns: 4

  120. "12345678911234567891123456789112345678911234567891"

    Returns: 1

  121. "123456789123456789123456789123456789123456"

    Returns: 6

  122. "24816121545878975786798794988979794233211212231686"

    Returns: 0

  123. "9999999999999999999999999999999999999999999999999"

    Returns: 0

  124. "12345678912345678912345678912345678912345678955555"

    Returns: 5

  125. "11111111111111111111111111111111"

    Returns: 1

  126. "123456789123456789123456789123456789"

    Returns: 0

  127. "1111111111111111111111111111111111111111"

    Returns: 5

  128. "1234876152384761253487612354817623541872365418723"

    Returns: 4

  129. "313"

    Returns: 1

  130. "123451234512345123451234512345123451234512345"

    Returns: 0

  131. "12311234654846847847644769748545463415415416415415"

    Returns: 1

  132. "99999999999999999999999999999999999999999999999977"

    Returns: 1

  133. "541556321654165315465315165615154512"

    Returns: 4

  134. "11235813213455654654654654"

    Returns: 1

  135. "1234567891234567891234567891234567891234567"

    Returns: 1

  136. "9876543219876543219876543211234567891234567891234"

    Returns: 1

  137. "2345671233636363718231237123123123123123885853838"

    Returns: 3

  138. "45456567567567456453453435346456576574564353453425"

    Returns: 3

  139. "55555555555555555555555555555555555555"

    Returns: 2

  140. "12345678991234567899123456789912345678991234567899"

    Returns: 0

  141. "45"

    Returns: 0

  142. "9999999999999999999999999999999999999995"

    Returns: 4

  143. "123456789112345678911234567891123456789112345"

    Returns: 4

  144. "9999999999999999999999998875699"

    Returns: 7

  145. "9999999999999999999999999999999999999999999999991"

    Returns: 1

  146. "999999999949997999999199999699993999999999999"

    Returns: 3

  147. "2224322342354343887879879743294742938429842398466"

    Returns: 3

  148. "1222"

    Returns: 2

  149. "98765412345464841826168418643115841834189899951684"

    Returns: 5

  150. "98639481349863948134986394813498639481349863948134"

    Returns: 1

  151. "77777757777797777778777777777777777377777177777777"

    Returns: 7

  152. "1111"

    Returns: 5

  153. "9999999999999999999999999999999999999999"

    Returns: 0

  154. "123456789987654343532532524688712288"

    Returns: 2

  155. "4354373534534535345344543543543"

    Returns: 8

  156. "11111"

    Returns: 8

  157. "123456"

    Returns: 6

  158. "111"

    Returns: 3

  159. "19999999999999999999999999999999999999999999999999"

    Returns: 2

  160. "23"

    Returns: 1

  161. "11111222223333344444555556666677777888889999912345"

    Returns: 3

  162. "123647382626273847463636464637285948372737473727"

    Returns: 0

  163. "123512315124124"

    Returns: 4

  164. "31"

    Returns: 8

  165. "98765412345464841826168418643115841836189899951684"

    Returns: 0

  166. "99999999999999999999999988756999999999999665"

    Returns: 3

  167. "66274834855367125655616786474316121686927432329479"

    Returns: 7

  168. "987654321123456789987654321123456789987654321"

    Returns: 0

  169. "1111111111111111111111111111111111"

    Returns: 2

  170. "55555555555555555555555555555555555555555"

    Returns: 4

  171. "81238534363528825383492253329832796131335973541574"

    Returns: 0

  172. "12345678923456723456123889566231235667734"

    Returns: 0

  173. "12345123451234512345123451234512345123451234512345"

    Returns: 3

  174. "12124"

    Returns: 7

  175. "9999999999999999999999999999999999999999999999213"

    Returns: 6

  176. "1234567891234567891234567891234567891234"

    Returns: 8

  177. "98795412345464841826168418643115841836189899951684"

    Returns: 6

  178. "1234567891234567891234567891234567891234567891234"

    Returns: 1

  179. "51116111711411111111111145112111314118141181191111"

    Returns: 5

  180. "1234567891234567891234567891234567"

    Returns: 8

  181. "98712349867132497861234987612349876123497861234976"

    Returns: 8

  182. "98546712856382853974329439842766319873164383724499"

    Returns: 6

  183. "78983279842342842342342442342"

    Returns: 7

  184. "12345678912345678712345678912345678912345678912345"

    Returns: 8

  185. "999999999999999999999999999999999999999999999923"

    Returns: 7

  186. "733"

    Returns: 7

  187. "12345678912345678912345678912345678912345689123456"

    Returns: 1

  188. "56789567895678956789567895678956789567895678956789"

    Returns: 7

  189. "8888888888888888888888888888888888888888888888888"

    Returns: 5

  190. "12345678988812345678911111111144455522333"

    Returns: 7

  191. "12941848234892475813718374891374891347894789327289"

    Returns: 4

  192. "7894"

    Returns: 8

  193. "123456789612345678961234444"

    Returns: 1

  194. "99999999999999999999499992999999979999999999999999"

    Returns: 8

  195. "47563874657623487562937846597826347562783647856728"

    Returns: 5

  196. "5765487329698746387254962748936579843265876432986"

    Returns: 2

  197. "123456789123456789123456789123456789123456788"

    Returns: 5


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: