Statistics

Problem Statement for "ArpaKonkoori"

Problem Statement

Arpa took part in an exam called Konkoor. Here is one of questions that was on the exam:

You are given positive integers d and s. Find nonnegative integers a and b such that gcd(a, b) = d and a^2 - b^2 = s.

Given the longs d and s, compute and return the largest possible value of a. If there is no solution, return -1 instead.

Definition

Class:
ArpaKonkoori
Method:
getA
Parameters:
long, long
Returns:
long
Method signature:
long getA(long d, long s)
(be sure your method is public)

Constraints

  • d will be between 1 and 10^12, inclusive.
  • s will be between 1 and 10^12, inclusive.

Examples

  1. 5

    2975

    Returns: 300

    There are two valid pairs (a, b): (300, 295) and (60, 25). Thus, the largest possible value of a is 300.

  2. 1

    2975

    Returns: 1488

    This time there are four solutions. The one with the largest value a is a=1488, b=1487.

  3. 1

    1000000000000

    Returns: 250000000001

  4. 64

    1000000000000

    Returns: 7812500032

  5. 5

    1000000000000

    Returns: 50000000005

  6. 32

    188956800000

    Returns: 2952450016

  7. 96

    188956800000

    Returns: 984150048

  8. 1

    188956800000

    Returns: 47239200001

  9. 1

    100

    Returns: -1

    There is no valid solution. There are some pairs (a, b) such that a^2 - b^2 = 100. However, none of them have gcd(a, b) = 1.

  10. 1

    10000

    Returns: 2501

  11. 12345678901

    345

    Returns: -1

  12. 3

    9

    Returns: 3

    The only solution here is a=3, b=0.

  13. 70230644898

    607438024591

    Returns: -1

  14. 629013726734

    280648065557

    Returns: -1

  15. 423107726802

    675995276784

    Returns: -1

  16. 872054062689

    723352089582

    Returns: -1

  17. 440044527

    871730498632

    Returns: -1

  18. 796637203186

    10937940716

    Returns: -1

  19. 897293416772

    347457435530

    Returns: -1

  20. 470589122163

    258686081905

    Returns: -1

  21. 564888141584

    486873550372

    Returns: -1

  22. 266106568450

    614323191592

    Returns: -1

  23. 787586051200

    389500281984

    Returns: -1

  24. 376243325326

    633755884201

    Returns: -1

  25. 218020693183

    864313288104

    Returns: -1

  26. 802474369169

    137590475323

    Returns: -1

  27. 108808392515

    637213539851

    Returns: -1

  28. 559993206405

    895673031139

    Returns: -1

  29. 104165131106

    960564318198

    Returns: -1

  30. 252892449072

    768485673033

    Returns: -1

  31. 368704154405

    516334757417

    Returns: -1

  32. 123455308679

    458586863890

    Returns: -1

  33. 894486

    800105204196

    Returns: 894486

  34. 194

    450767463444

    Returns: 1161771910

  35. 141586

    621444457276

    Returns: 2265376

  36. 916

    457932432176

    Returns: 249963576

  37. 94494

    696471050808

    Returns: -1

  38. 11

    197413617016

    Returns: 4486673125

  39. 332

    820857747872

    Returns: -1

  40. 1

    689544082806

    Returns: -1

  41. 4

    568018009856

    Returns: 35501125620

  42. 1000000

    1000000000000

    Returns: 1000000

  43. 2183

    759280596881

    Returns: 173908695

  44. 497

    947369673285

    Returns: 953088451

  45. 1069

    691308695906

    Returns: -1

  46. 182

    384524525112

    Returns: -1

  47. 11206

    181831783328

    Returns: 4067778

  48. 45788

    138371702304

    Returns: -1

  49. 10

    674147190900

    Returns: 33707359550

  50. 116963

    191524807166

    Returns: -1

  51. 483

    884398599

    Returns: 915768

  52. 14

    56540008280

    Returns: -1

  53. 1

    150502977886

    Returns: -1

  54. 63

    214307623530

    Returns: -1

  55. 62494

    23433000216

    Returns: -1

  56. 5

    304488799475

    Returns: 30448879950

  57. 219766

    96594189512

    Returns: -1

  58. 770180

    593177232400

    Returns: 770180

  59. 5104

    37929988096

    Returns: 1862960

  60. 6

    393946447644

    Returns: 32828870640

  61. 166

    505142758888

    Returns: -1

  62. 608911

    741545211842

    Returns: -1

  63. 1130

    153434857800

    Returns: -1

  64. 15034

    655009310088

    Returns: -1

  65. 1012

    641823875792

    Returns: 317107164

  66. 18

    706743731412

    Returns: 19631770326

  67. 15

    17276489550

    Returns: -1

  68. 296847

    440590707045

    Returns: 890541

  69. 40247

    408194894268

    Returns: -1

  70. 3404

    253516698864

    Returns: 37239760

  71. 17124

    706101153408

    Returns: 10325772

  72. 15

    908093176200

    Returns: 15134886285

  73. 268

    675043322624

    Returns: 629704860

  74. 100

    54876510000

    Returns: 274382600

  75. 503

    407184841321

    Returns: 404756555

  76. 4

    610173808224

    Returns: -1

  77. 512396

    787648982448

    Returns: 1024792

  78. 3324

    596810438640

    Returns: 89774592

  79. 75

    155042566875

    Returns: 1033617150

  80. 105512

    578904671488

    Returns: -1

  81. 1761

    176897245203

    Returns: 50227242

  82. 7

    75874612422

    Returns: -1

  83. 2279

    533532122884

    Returns: -1

  84. 386

    263236001072

    Returns: -1

  85. 726

    513993446604

    Returns: 353990340

  86. 967

    863737033855

    Returns: 446607016

  87. 1136

    210118558720

    Returns: -1

  88. 513644

    263830158736

    Returns: 513644

  89. 1

    506231356623

    Returns: 253115678312

  90. 122929

    498680788353

    Returns: 2089793

  91. 616

    482360293184

    Returns: 391526520

  92. 10

    611211509800

    Returns: -1

  93. 60686

    445617662116

    Returns: 3701846

  94. 100021

    410172218081

    Returns: 2100441

  95. 137118

    733252491036

    Returns: 2742360

  96. 7879

    627552981869

    Returns: 39828345

  97. 178126

    698035181272

    Returns: -1

  98. 4446

    235305368064

    Returns: 13235742

  99. 714564

    510601710096

    Returns: 714564

  100. 59704

    110501596096

    Returns: 955264

  101. 246

    178600326156

    Returns: 363008916

  102. 941509

    886439197081

    Returns: 941509

  103. 670134

    449079577956

    Returns: 670134

  104. 233075

    54323955625

    Returns: 233075

  105. 8186

    814513794380

    Returns: 49754508

  106. 28613

    205494646019

    Returns: 3605238

  107. 118028

    195028522976

    Returns: -1

  108. 7

    340363628402

    Returns: -1

  109. 63950

    462125082500

    Returns: 3645150

  110. 622565

    775174358450

    Returns: -1

  111. 108448

    658614247424

    Returns: 1626720

  112. 104

    576494087104

    Returns: 2771606240

  113. 1

    1

    Returns: 1

  114. 1

    2

    Returns: -1

  115. 2

    1

    Returns: -1

  116. 2

    2

    Returns: -1

  117. 2

    4

    Returns: 2

  118. 1

    100000000000

    Returns: 25000000001

  119. 100000000000

    100000000000

    Returns: -1

  120. 1

    999999999999

    Returns: 500000000000

  121. 1

    8

    Returns: 3

  122. 30064771073

    60129542145

    Returns: -1


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: