Statistics

Problem Statement for "ProdCalc"

Problem Statement

You have a calculator that can only handle numbers with up to d digits. Initially, the number shown on the screen is 1. You must perform exactly op multiplication operations. Each operation multiplies the number on the screen by a digit between 2 and 9, inclusive. The result of each operation must be a number with d or less digits. Return the largest number that can be displayed on the screen after op operations. If there is no way to perform op operations without overflowing the calculator, return -1.

Definition

Class:
ProdCalc
Method:
highest
Parameters:
int, int
Returns:
long
Method signature:
long highest(int d, int op)
(be sure your method is public)

Constraints

  • d will be between 2 and 8, inclusive.
  • op will be between 0 and 30, inclusive.

Examples

  1. 4

    3

    Returns: 729

    The calculator can store up to 4 digits. With 3 multiplications, we can obtain at most 729, by using digit 9 every time: 1 * 9 * 9 * 9 = 729.

  2. 8

    0

    Returns: 1

    No multiplications can be performed.

  3. 2

    3

    Returns: 98

    The storage is limited to 2 digits. The highest number that can be shown on screen after 3 multiplications is 98 (2 * 7 * 7).

  4. 8

    10

    Returns: 99574272

  5. 8

    20

    Returns: 99532800

  6. 8

    30

    Returns: -1

    Even if we would only use digit 2 every time, 2^30 has more than 8 digits and overflows the calculator.

  7. 2

    6

    Returns: 96

  8. 2

    0

    Returns: 1

  9. 2

    1

    Returns: 9

  10. 2

    2

    Returns: 81

  11. 3

    1

    Returns: 9

  12. 2

    4

    Returns: 96

  13. 2

    5

    Returns: 96

  14. 2

    7

    Returns: -1

  15. 2

    30

    Returns: -1

  16. 3

    0

    Returns: 1

  17. 3

    2

    Returns: 81

  18. 3

    3

    Returns: 729

  19. 3

    4

    Returns: 980

  20. 3

    5

    Returns: 980

  21. 3

    6

    Returns: 972

  22. 3

    7

    Returns: 972

  23. 3

    8

    Returns: 960

  24. 3

    9

    Returns: 768

  25. 3

    10

    Returns: -1

  26. 3

    30

    Returns: -1

  27. 4

    4

    Returns: 6561

  28. 4

    5

    Returns: 9800

  29. 4

    6

    Returns: 9800

  30. 4

    7

    Returns: 9800

  31. 4

    8

    Returns: 9720

  32. 4

    9

    Returns: 9720

  33. 4

    10

    Returns: 9600

  34. 4

    11

    Returns: 9216

  35. 4

    12

    Returns: 9216

  36. 4

    13

    Returns: 8192

  37. 4

    14

    Returns: -1

  38. 5

    17

    Returns: -1

  39. 6

    20

    Returns: -1

  40. 7

    24

    Returns: -1

  41. 8

    27

    Returns: -1

  42. 5

    5

    Returns: 59049

  43. 5

    6

    Returns: 99225

  44. 5

    7

    Returns: 99225

  45. 5

    8

    Returns: 99225

  46. 5

    9

    Returns: 98784

  47. 5

    10

    Returns: 98784

  48. 5

    11

    Returns: 98304

  49. 5

    12

    Returns: 98304

  50. 5

    13

    Returns: 98304

  51. 5

    14

    Returns: 98304

  52. 5

    15

    Returns: 98304

  53. 5

    16

    Returns: 98304

  54. 6

    6

    Returns: 531441

  55. 6

    7

    Returns: 995328

  56. 6

    8

    Returns: 995328

  57. 6

    9

    Returns: 995328

  58. 6

    10

    Returns: 995328

  59. 6

    11

    Returns: 995328

  60. 6

    12

    Returns: 995328

  61. 6

    13

    Returns: 995328

  62. 6

    14

    Returns: 995328

  63. 6

    15

    Returns: 995328

  64. 6

    16

    Returns: 995328

  65. 6

    17

    Returns: 995328

  66. 6

    18

    Returns: 983040

  67. 6

    19

    Returns: 786432

  68. 7

    7

    Returns: 4782969

  69. 7

    8

    Returns: 9953280

  70. 7

    9

    Returns: 9953280

  71. 7

    10

    Returns: 9953280

  72. 7

    11

    Returns: 9953280

  73. 7

    12

    Returns: 9953280

  74. 7

    13

    Returns: 9953280

  75. 7

    14

    Returns: 9953280

  76. 7

    15

    Returns: 9953280

  77. 7

    16

    Returns: 9953280

  78. 7

    17

    Returns: 9953280

  79. 7

    18

    Returns: 9953280

  80. 7

    19

    Returns: 9953280

  81. 7

    20

    Returns: 9830400

  82. 7

    21

    Returns: 9437184

  83. 7

    22

    Returns: 9437184

  84. 7

    23

    Returns: 8388608

  85. 8

    8

    Returns: 43046721

  86. 8

    9

    Returns: 99574272

  87. 8

    11

    Returns: 99574272

  88. 8

    12

    Returns: 99574272

  89. 8

    13

    Returns: 99574272

  90. 8

    14

    Returns: 99574272

  91. 8

    15

    Returns: 99574272

  92. 8

    16

    Returns: 99574272

  93. 8

    17

    Returns: 99574272

  94. 8

    18

    Returns: 99532800

  95. 8

    19

    Returns: 99532800

  96. 8

    21

    Returns: 99532800

  97. 8

    22

    Returns: 99090432

  98. 8

    23

    Returns: 99090432

  99. 8

    24

    Returns: 94371840

  100. 8

    25

    Returns: 83886080

  101. 8

    26

    Returns: 67108864

  102. 8

    27

    Returns: -1

  103. 8

    28

    Returns: -1

  104. 8

    29

    Returns: -1

  105. 8

    30

    Returns: -1

  106. 8

    25

    Returns: 83886080

  107. 8

    9

    Returns: 99574272

  108. 2

    2

    Returns: 81

  109. 2

    4

    Returns: 96

  110. 4

    14

    Returns: -1

  111. 8

    20

    Returns: 99532800

  112. 8

    0

    Returns: 1

  113. 8

    30

    Returns: -1

  114. 8

    26

    Returns: 67108864


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: