Statistics

Problem Statement for "LocateTreasure"

Problem Statement

First of all we define a function dig for all nonnegative integers:
dig(x) := x                          if 0 <= x <= 9
dig(x) := dig(sum of digits of x)    if x >= 10
For example: dig(49) = dig(13) = dig(4) = 4.

Your crew of treasure hunters have recently found a very old map with instructions on how to find the treasure of an old civilization. There is a variable named Gold number, and it is initially assigned a value of 1. You are currently standing at position (0, 0), facing north.


Repeat the following instructions K times:
1. Take dig(Gold number) steps forward, and then turn 90 degrees right.
2. Multiply Gold number by multi.

Each step forward moves you one unit in your current direction. Moving north changes your location by (0, 1), south changes your location by (0, -1), west changes your location by (-1, 0) and east changes your location by (1, 0). After you perform all the instructions, you can start digging. Return the coordinates (X, Y) of your final location as a String in the form "X Y" (quotes for clarity), where X and Y contain no extra leading zeroes.

Definition

Class:
LocateTreasure
Method:
location
Parameters:
int, int
Returns:
String
Method signature:
String location(int K, int multi)
(be sure your method is public)

Constraints

  • K will be between 1 and 10^9, inclusive.
  • multi will be between 1 and 1000, inclusive.

Examples

  1. 5

    2

    Returns: "-6 4"

    You will go 1 step north, 2 steps east, 4 steps south, 8 steps west and 7 steps north.

  2. 99

    1

    Returns: "1 0"

    You will do exactly 1 step in every iteration.

  3. 5226

    4

    Returns: "10 -2"

  4. 6

    9

    Returns: "9 1"

  5. 1000000000

    2

    Returns: "-6 -3"

  6. 79025992

    1

    Returns: "0 0"

  7. 219683641

    3

    Returns: "-6 1"

  8. 247731190

    4

    Returns: "7 4"

  9. 920386894

    5

    Returns: "2 4"

  10. 888829576

    6

    Returns: "-3 -8"

  11. 260501341

    7

    Returns: "0 1"

  12. 105476434

    8

    Returns: "8 1"

  13. 29

    9

    Returns: "0 1"

  14. 312553813

    10

    Returns: "0 1"

  15. 687512077

    11

    Returns: "0 1"

  16. 38

    12

    Returns: "3 1"

  17. 41

    13

    Returns: "3 -2"

  18. 44

    14

    Returns: "-6 -3"

  19. 337774576

    15

    Returns: "-3 -8"

  20. 442868173

    16

    Returns: "0 1"

  21. 804601048

    17

    Returns: "0 0"

  22. 56

    18

    Returns: "0 -8"

  23. 410048638

    19

    Returns: "1 1"

  24. 62

    928

    Returns: "1 1"

  25. 65

    734

    Returns: "-3 -2"

  26. 68

    711

    Returns: "0 -8"

  27. 688266589

    965

    Returns: "0 1"

  28. 74

    854

    Returns: "8 1"

  29. 77

    422

    Returns: "0 1"

  30. 632756779

    265

    Returns: "10 -3"

  31. 71551579

    676

    Returns: "1 0"

  32. 712969612

    96

    Returns: "-3 -8"

  33. 89

    32

    Returns: "-3 -2"

  34. 92

    835

    Returns: "3 3"

  35. 95

    374

    Returns: "2 0"

  36. 738294070

    544

    Returns: "7 4"

  37. 547196272

    618

    Returns: "-3 -8"

  38. 104

    491

    Returns: "-6 -3"

  39. 655871152

    807

    Returns: "-3 -8"

  40. 747887641

    637

    Returns: "0 1"

  41. 9796882

    448

    Returns: "4 7"

  42. 116

    672

    Returns: "-3 -8"

  43. 466182835

    43

    Returns: "10 3"

  44. 122

    689

    Returns: "5 1"

  45. 210082162

    402

    Returns: "6 1"

  46. 75680341

    31

    Returns: "0 1"

  47. 131

    164

    Returns: "5 0"

  48. 502700341

    780

    Returns: "-3 1"

  49. 217085866

    180

    Returns: "9 1"

  50. 389727085

    978

    Returns: "-3 1"

  51. 292509493

    48

    Returns: "-6 1"

  52. 278858965

    879

    Returns: "-3 1"

  53. 351903760

    589

    Returns: "3 -6"

  54. 152

    636

    Returns: "-3 -8"

  55. 7560

    867

    Returns: "-6 -8"

  56. 6121

    579

    Returns: "-6 1"

  57. 9941400

    981

    Returns: "0 -8"

  58. 361

    201

    Returns: "-6 1"

  59. 952921

    942

    Returns: "-3 1"

  60. 1000000000

    991

    Returns: "0 0"

  61. 1000000000

    1000

    Returns: "0 0"

  62. 172672312

    999

    Returns: "0 -8"

  63. 999917171

    971

    Returns: "8 0"

  64. 987654142

    847

    Returns: "1 1"

  65. 1000000000

    997

    Returns: "6 -3"

  66. 999999999

    999

    Returns: "9 -8"

  67. 1000000000

    779

    Returns: "-3 -6"

  68. 1000000000

    5

    Returns: "-3 -6"

  69. 1000000000

    989

    Returns: "0 0"

  70. 1000000000

    789

    Returns: "-3 -8"

  71. 1000000000

    1

    Returns: "0 0"

  72. 100000000

    123

    Returns: "-3 -8"

  73. 900000001

    9

    Returns: "0 1"

  74. 1000000000

    979

    Returns: "6 -3"

  75. 99999999

    999

    Returns: "9 -8"

  76. 1

    3

    Returns: "0 1"

  77. 999999991

    8

    Returns: "8 0"

  78. 1000000000

    939

    Returns: "-6 -8"

  79. 1000000000

    9

    Returns: "0 -8"

  80. 999999

    999

    Returns: "9 -8"

  81. 954345345

    566

    Returns: "0 1"

  82. 1000000000

    137

    Returns: "-6 -3"

  83. 840

    9

    Returns: "0 -8"

  84. 1000000000

    987

    Returns: "-3 -8"

  85. 4

    3

    Returns: "-6 -8"

  86. 1000000000

    113

    Returns: "-3 -6"

  87. 1000000000

    999

    Returns: "0 -8"

  88. 998697978

    83

    Returns: "-1 4"

  89. 1000

    9

    Returns: "0 -8"

  90. 987654321

    987

    Returns: "-3 1"

  91. 1000000000

    3

    Returns: "-6 -8"

  92. 3

    6

    Returns: "6 -8"

  93. 800007086

    61

    Returns: "7 1"

  94. 99

    3

    Returns: "3 -8"

  95. 500000001

    333

    Returns: "0 1"

  96. 199

    3

    Returns: "3 -8"

  97. 999999799

    987

    Returns: "6 -8"

  98. 1000000000

    986

    Returns: "-3 -6"

  99. 1000000000

    927

    Returns: "0 -8"

  100. 1451521

    969

    Returns: "-3 1"

  101. 999999994

    994

    Returns: "7 4"

  102. 999999999

    2

    Returns: "2 -3"

  103. 32675632

    4

    Returns: "3 -6"

  104. 1000

    7

    Returns: "6 -3"

  105. 15

    19

    Returns: "1 0"

  106. 800003778

    61

    Returns: "10 4"

  107. 13

    3

    Returns: "-6 1"

  108. 1000000

    999

    Returns: "0 -8"

  109. 999999999

    19

    Returns: "1 0"

  110. 999999994

    996

    Returns: "6 1"

  111. 1000000000

    13

    Returns: "3 -6"

  112. 12

    3

    Returns: "-6 -8"

  113. 1000000000

    599

    Returns: "-3 -6"


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: