Statistics

Problem Statement for "MicrowaveSelling"

Problem Statement

Manao lives in a country where the prices of all goods are positive integers. He is setting up a company that sells microwaves, and needs to decide the best price at which to sell them. Recently, he heard of a new psychological discovery: the more trailing 9's a price has, the more attractive it is to the customer. For example, 9099 has two trailing 9's, and 8909 has only one trailing 9, so the first price is more attractive.

Manao knows that he can only afford to sell microwaves at a price no less than minPrice, and believes that customers will only buy the microwaves if they cost no more than maxPrice. Help Manao by finding an integer between minPrice and maxPrice, inclusive, which has the maximum possible number of trailing 9's. If there are several candidates, return the largest one.

Definition

Class:
MicrowaveSelling
Method:
mostAttractivePrice
Parameters:
int, int
Returns:
int
Method signature:
int mostAttractivePrice(int minPrice, int maxPrice)
(be sure your method is public)

Constraints

  • minPrice will be between 1 and 1,000,000, inclusive.
  • maxPrice will be between minPrice and 1,000,000, inclusive.

Examples

  1. 460

    680

    Returns: 599

    Of all the prices between 460 and 680, 499 and 599 have the maximum number of trailing 9's. Since 599 is larger, it is Manao's price of choice.

  2. 10

    1000

    Returns: 999

    999 has three trailing 9's, and no other number in the given range has this property.

  3. 1255

    2999

    Returns: 2999

    Note that 2999 is still an acceptable price.

  4. 20

    25

    Returns: 25

    There are no numbers with trailing 9's between 20 and 25.

  5. 1

    1000000

    Returns: 999999

  6. 1

    999999

    Returns: 999999

  7. 1

    999998

    Returns: 899999

  8. 10

    1000000

    Returns: 999999

  9. 1

    1

    Returns: 1

  10. 999999

    999999

    Returns: 999999

  11. 6

    11

    Returns: 9

  12. 6

    315279

    Returns: 299999

  13. 79

    100

    Returns: 99

  14. 770

    4520

    Returns: 3999

  15. 1024

    2048

    Returns: 1999

  16. 3310

    3358

    Returns: 3349

  17. 9999

    9999

    Returns: 9999

  18. 9999

    10000

    Returns: 9999

  19. 99091

    107993

    Returns: 99999

  20. 3019

    80000

    Returns: 79999

  21. 60020

    499997

    Returns: 399999

  22. 18

    200318

    Returns: 199999

  23. 990000

    990000

    Returns: 990000

  24. 770709

    790334

    Returns: 789999

  25. 10000

    199998

    Returns: 99999

  26. 527186

    527189

    Returns: 527189

  27. 999299

    999369

    Returns: 999299

  28. 895992

    896005

    Returns: 895999

  29. 667202

    983878

    Returns: 899999

  30. 400

    40000

    Returns: 39999

  31. 81592

    673912

    Returns: 599999

  32. 56097

    74992

    Returns: 69999

  33. 785785

    800020

    Returns: 799999

  34. 17

    6998

    Returns: 5999

  35. 3

    999991

    Returns: 899999

  36. 80

    1000000

    Returns: 999999

  37. 666666

    666666

    Returns: 666666

  38. 999

    90999

    Returns: 89999

  39. 18

    21

    Returns: 19

  40. 100

    198

    Returns: 189

  41. 12330

    12345

    Returns: 12339

  42. 899

    909

    Returns: 899

  43. 1

    9989

    Returns: 8999

  44. 99

    909

    Returns: 899

  45. 8999

    9099

    Returns: 8999

  46. 1

    99998

    Returns: 89999

  47. 1

    9100

    Returns: 8999

  48. 1

    8

    Returns: 8

  49. 9

    18

    Returns: 9

  50. 989

    991

    Returns: 989

  51. 19

    90

    Returns: 89

  52. 1

    10

    Returns: 9

  53. 1

    10897

    Returns: 9999

  54. 9

    10

    Returns: 9

  55. 1088

    1090

    Returns: 1089

  56. 89

    90

    Returns: 89

  57. 20000

    29099

    Returns: 28999

  58. 21

    28

    Returns: 28

  59. 2

    3

    Returns: 3

  60. 898

    909

    Returns: 899

  61. 8

    16

    Returns: 9

  62. 1

    9991

    Returns: 8999

  63. 1000

    3000

    Returns: 2999

  64. 2000

    2989

    Returns: 2899

  65. 9

    90

    Returns: 89

  66. 998

    9100

    Returns: 8999

  67. 1

    9099

    Returns: 8999

  68. 800

    910

    Returns: 899

  69. 1

    919

    Returns: 899

  70. 109

    110

    Returns: 109

  71. 98

    110

    Returns: 99

  72. 2000

    2998

    Returns: 2899

  73. 89

    92

    Returns: 89

  74. 4888

    5888

    Returns: 4999

  75. 1

    9998

    Returns: 8999

  76. 108

    109

    Returns: 109

  77. 89

    91

    Returns: 89

  78. 1

    909

    Returns: 899

  79. 199

    910

    Returns: 899

  80. 3999

    4600

    Returns: 3999

  81. 1

    9909

    Returns: 8999

  82. 19

    20

    Returns: 19

  83. 1088

    1092

    Returns: 1089

  84. 8099

    8909

    Returns: 8899

  85. 965

    970

    Returns: 969

  86. 1888

    2888

    Returns: 1999

  87. 899

    990

    Returns: 899

  88. 10

    12099

    Returns: 9999

  89. 1

    9899

    Returns: 8999

  90. 79

    98

    Returns: 89

  91. 1

    909999

    Returns: 899999

  92. 881

    991

    Returns: 899

  93. 9

    909

    Returns: 899

  94. 199

    909

    Returns: 899

  95. 8100

    9099

    Returns: 8999

  96. 8999

    9998

    Returns: 8999

  97. 8878

    8888

    Returns: 8879

  98. 1000

    9998

    Returns: 8999

  99. 1099

    1909

    Returns: 1899

  100. 8998

    9991

    Returns: 8999

  101. 1

    92000

    Returns: 89999

  102. 2003

    2010

    Returns: 2009

  103. 9

    100

    Returns: 99

  104. 8999

    9990

    Returns: 8999

  105. 900

    998

    Returns: 989

  106. 199

    991

    Returns: 899

  107. 9000

    9998

    Returns: 9899

  108. 9980

    9995

    Returns: 9989

  109. 800

    980

    Returns: 899

  110. 10

    20

    Returns: 19

  111. 8899

    8909

    Returns: 8899

  112. 9909

    9910

    Returns: 9909

  113. 1

    1999

    Returns: 1999

  114. 7950

    7960

    Returns: 7959

  115. 9989

    9990

    Returns: 9989

  116. 99

    99

    Returns: 99

  117. 1236

    1526

    Returns: 1499

  118. 18999

    999990

    Returns: 899999

  119. 99989

    99990

    Returns: 99989

  120. 989

    990

    Returns: 989

  121. 19

    24

    Returns: 19


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: