Statistics

Problem Statement for "EllysPalMul"

Problem Statement

This problem has a non-standard time limit: 3 seconds.

We call a number a palindrome if it reads the same from left to right as it does from right to left. For example, some palindromic numbers are 6, 11, 121, 666, 100001, and 123454321. Note that the number 47740 is not a palindrome (as you are not allowed to have unnecessary leading zeros).

Elly has the integer X. Now she wants to find the lowest integer 1 ≤ Y ≤ 1,000,000,000, such that the product X * Y is a palindrome (if there is such a number).

Let's look at several examples:
  • If X = 42, then Y is 6 (42 * 6 = 252).
  • If X = 121, then Y = 1 (121 * 1 = 121).
  • If X = 1337, then Y = 143 (1337 * 143 = 191191).
  • If X = 13, then Y = 38 (13 * 38 = 494).
  • If X = 100, then no Y can make it a palindrome.
  • If X = 21951, then Y = 9612315612 would make it a palindrome (21951 * 9612315612 = 210999939999012), but this Y isn't in the bounds [1, 10^9].
Given the int X, return the lowest integer Y in the interval [1, 10^9] that makes the product X * Y a palindrome, or -1 if there is no such Y.

Definition

Class:
EllysPalMul
Method:
getMin
Parameters:
int
Returns:
int
Method signature:
int getMin(int X)
(be sure your method is public)

Constraints

  • X will be between 1 and 100,000, inclusive.

Examples

  1. 42

    Returns: 6

    42 * 6 = 252

  2. 121

    Returns: 1

    121 is already a palindrome, so we can multiply it by 1.

  3. 1337

    Returns: 143

    1337 * 143 = 191191

  4. 13

    Returns: 38

    13 * 38 = 494

  5. 100

    Returns: -1

    No Y can make it a palindrome, so we return -1.

  6. 21951

    Returns: -1

    Y = 9612315612 would make it a palindrome (21951 * 9612315612 = 210999939999012), but since it isn't in the bounds [1, 10^9], we return -1.

  7. 70794

    Returns: 33477128

  8. 1

    Returns: 1

  9. 3

    Returns: 1

  10. 7

    Returns: 1

  11. 10

    Returns: -1

  12. 420

    Returns: -1

  13. 12340

    Returns: -1

  14. 100000

    Returns: -1

  15. 8296

    Returns: 746

  16. 15373

    Returns: 14914

  17. 18730

    Returns: -1

  18. 19962

    Returns: 21252

  19. 22591

    Returns: 337

  20. 37114

    Returns: 1196

  21. 37543

    Returns: 19

  22. 41230

    Returns: -1

  23. 46415

    Returns: 10827

  24. 48677

    Returns: 79

  25. 58955

    Returns: 9097

  26. 67211

    Returns: 117

  27. 67573

    Returns: 1373

  28. 69066

    Returns: 425962

  29. 77271

    Returns: 6985

  30. 80421

    Returns: 1139

  31. 89015

    Returns: 6405

  32. 91379

    Returns: 803

  33. 94951

    Returns: 8017

  34. 97982

    Returns: 4857

  35. 21951

    Returns: -1

  36. 26673

    Returns: -1

  37. 35564

    Returns: -1

  38. 48505

    Returns: -1

  39. 53346

    Returns: -1

  40. 65853

    Returns: -1

  41. 71128

    Returns: -1

  42. 80019

    Returns: -1

  43. 81

    Returns: 12345679

  44. 162

    Returns: 172839506

  45. 243

    Returns: 122633744

  46. 324

    Returns: 86419753

  47. 405

    Returns: 135802469

  48. 486

    Returns: 61316872

  49. 567

    Returns: 49382716

  50. 648

    Returns: 45987654

  51. 655

    Returns: 77913

  52. 729

    Returns: 54581617

  53. 891

    Returns: 61728395

  54. 972

    Returns: 30658436

  55. 1053

    Returns: 27445394

  56. 1134

    Returns: 24691358

  57. 1458

    Returns: 33463648

  58. 1539

    Returns: 12345679

  59. 2019

    Returns: 819

  60. 2025

    Returns: 28493827

  61. 2673

    Returns: 21324205

  62. 5427

    Returns: 5343466

  63. 6061

    Returns: 4022

  64. 6075

    Returns: 9512757

  65. 6156

    Returns: 10721051

  66. 7317

    Returns: 10944224

  67. 8081

    Returns: 445372913

  68. 8691

    Returns: 21627991

  69. 8791

    Returns: 284141962

  70. 9396

    Returns: 9034588

  71. 9234

    Returns: 7340264

  72. 9072

    Returns: 7263998

  73. 9477

    Returns: 7259618

  74. 9153

    Returns: 6443745

  75. 9315

    Returns: 6226365

  76. 9639

    Returns: 5913435

  77. 9558

    Returns: 5011403

  78. 9882

    Returns: 4756102

  79. 9963

    Returns: 3001084

  80. 11583

    Returns: 338081671

  81. 15795

    Returns: 322822659

  82. 16162

    Returns: 272125907

  83. 17582

    Returns: 142070981

  84. 19359

    Returns: 67151919

  85. 17335

    Returns: 2942409

  86. 17735

    Returns: 2863903

  87. 18295

    Returns: 2853255

  88. 18435

    Returns: 2787649

  89. 19535

    Returns: 2667075

  90. 23615

    Returns: 213046407

  91. 23895

    Returns: 213006059

  92. 23166

    Returns: 207502374

  93. 24243

    Returns: 148460971

  94. 26373

    Returns: 94774654

  95. 28188

    Returns: 78004824

  96. 20745

    Returns: 2447809

  97. 20865

    Returns: 2414657

  98. 23475

    Returns: 2220415

  99. 23605

    Returns: 2171283

  100. 36585

    Returns: 158555101

  101. 32805

    Returns: 156988203

  102. 32324

    Returns: 138845731

  103. 34749

    Returns: 138334916

  104. 36855

    Returns: 137756071

  105. 39285

    Returns: 131599539

  106. 39905

    Returns: 126547901

  107. 35164

    Returns: 73740018

  108. 32886

    Returns: 66866992

  109. 38718

    Returns: 59403479

  110. 40405

    Returns: 128432123

  111. 43955

    Returns: 114844591

  112. 45205

    Returns: 110654961

  113. 47385

    Returns: 107607553

  114. 46332

    Returns: 103751187

  115. 49755

    Returns: 103527953

  116. 48486

    Returns: 90730469

  117. 42687

    Returns: 60873096

  118. 49734

    Returns: 53805843

  119. 49572

    Returns: 44177921

  120. 59105

    Returns: 85265241

  121. 50625

    Returns: 104019753

  122. 50255

    Returns: 101723773

  123. 51505

    Returns: 99047303

  124. 53055

    Returns: 98953535

  125. 51435

    Returns: 98764843

  126. 57915

    Returns: 98556505

  127. 53555

    Returns: 97249555

  128. 55485

    Returns: 96962051

  129. 56295

    Returns: 92348837

  130. 60105

    Returns: 89843429

  131. 67907

    Returns: 147259957

  132. 61155

    Returns: 83361851

  133. 62105

    Returns: 81330281

  134. 64265

    Returns: 78193197

  135. 65205

    Returns: 78058121

  136. 66015

    Returns: 77254527

  137. 67635

    Returns: 75389603

  138. 64648

    Returns: 69561753

  139. 69498

    Returns: 69167458

  140. 71404

    Returns: 56900301

  141. 76993

    Returns: 20664007

  142. 70065

    Returns: 72772137

  143. 71685

    Returns: 71842059

  144. 72729

    Returns: 71474635

  145. 70845

    Returns: 71015469

  146. 73305

    Returns: 69272081

  147. 78975

    Returns: 66463943

  148. 70328

    Returns: 36870009

  149. 82231

    Returns: 48644684

  150. 86686

    Returns: 239489657

  151. 81081

    Returns: 75183826

  152. 84645

    Returns: 66151479

  153. 81405

    Returns: 63251643

  154. 83025

    Returns: 63221897

  155. 80595

    Returns: 63150319

  156. 82215

    Returns: 62762221

  157. 83835

    Returns: 61772529

  158. 85455

    Returns: 59327131

  159. 97801

    Returns: 776995357

  160. 94514

    Returns: 31423478

  161. 92745

    Returns: 55839107

  162. 95175

    Returns: 55369455

  163. 91935

    Returns: 55145483

  164. 96795

    Returns: 54754415

  165. 96255

    Returns: 52984753

  166. 99225

    Returns: 52899873

  167. 96765

    Returns: 52711051

  168. 98415

    Returns: 52329401

  169. 8181

    Returns: -1

  170. 8891

    Returns: -1

  171. 9801

    Returns: -1

  172. 16362

    Returns: -1

  173. 17782

    Returns: -1

  174. 17982

    Returns: -1

  175. 19602

    Returns: -1

  176. 21951

    Returns: -1

  177. 24543

    Returns: -1

  178. 26673

    Returns: -1

  179. 26973

    Returns: -1

  180. 29403

    Returns: -1

  181. 32724

    Returns: -1

  182. 35564

    Returns: -1

  183. 35964

    Returns: -1

  184. 39204

    Returns: -1

  185. 40905

    Returns: -1

  186. 43902

    Returns: -1

  187. 44455

    Returns: -1

  188. 44955

    Returns: -1

  189. 48505

    Returns: -1

  190. 49005

    Returns: -1

  191. 49086

    Returns: -1

  192. 53346

    Returns: -1

  193. 53946

    Returns: -1

  194. 56555

    Returns: -1

  195. 57267

    Returns: -1

  196. 58806

    Returns: -1

  197. 62237

    Returns: -1

  198. 62937

    Returns: -1

  199. 65448

    Returns: -1

  200. 65853

    Returns: -1

  201. 68607

    Returns: -1

  202. 71128

    Returns: -1

  203. 71928

    Returns: -1

  204. 73629

    Returns: -1

  205. 78408

    Returns: -1

  206. 80019

    Returns: -1

  207. 80919

    Returns: -1

  208. 87804

    Returns: -1

  209. 88209

    Returns: -1

  210. 89991

    Returns: -1

  211. 98172

    Returns: -1

  212. 98901

    Returns: -1

  213. 37665

    Returns: 1510681

  214. 54108

    Returns: 47676794

  215. 25191

    Returns: 2731046

  216. 10019

    Returns: 138149

  217. 52579

    Returns: 19019

  218. 51775

    Returns: 1006835

  219. 6

    Returns: 1

  220. 99665

    Returns: 50346337

  221. 96335

    Returns: 53449

  222. 99997

    Returns: 166113

  223. 97137

    Returns: 89364

  224. 4649

    Returns: 239

  225. 99985

    Returns: 517219

  226. 2494

    Returns: 1616

  227. 99989

    Returns: 281438

  228. 1001

    Returns: 1

  229. 1215

    Returns: 46748971


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: