Statistics

Problem Statement for "FracSum"

Problem Statement

We want to be able to express a fraction as a sum of two fractions that have small denominators. Specifically, given a fraction a/b, we want to find fractions c/d and e/f such that
  • a/b = c/d + e/f, where d and f are positive
  • max(d,f) is as small as possible
Create a class FracSum that contains a method decompose that is given a and b and that returns the smallest value for max(d,f).

Definition

Class:
FracSum
Method:
decompose
Parameters:
int, int
Returns:
int
Method signature:
int decompose(int a, int b)
(be sure your method is public)

Constraints

  • a and b will each be between 1 and 2,000,000,000, inclusive.

Examples

  1. 14

    10

    Returns: 5

    14/10 = 0/1 + 7/5 is one way to keep the denominators less than or equal to 5.

  2. 1

    60

    Returns: 12

    1/60 = -2/5 + 5/12

  3. 8

    90

    Returns: 9

    8/90 = -4/5 + 8/9

  4. 60

    1

    Returns: 1

  5. 1

    1073741824

    Returns: 1073741824

  6. 1

    223092870

    Returns: 15015

  7. 142498471

    969414712

    Returns: 110261

  8. 969402524

    1779771171

    Returns: 102871

  9. 644728254

    539745730

    Returns: 7913

  10. 174887511

    537177095

    Returns: 36215

  11. 1325961320

    1943845226

    Returns: 156787

  12. 1218329540

    1495162667

    Returns: 116003

  13. 972532777

    233630565

    Returns: 2225053

  14. 856160600

    1471849252

    Returns: 30929

  15. 897542310

    490867014

    Returns: 391441

  16. 1646993492

    1359718535

    Returns: 37891

  17. 588799904

    1589095588

    Returns: 180497

  18. 616464741

    679443536

    Returns: 42593

  19. 1869461383

    71931701

    Returns: 45613

  20. 91778096

    1167477923

    Returns: 578819

  21. 1665050039

    1468475924

    Returns: 1844819

  22. 158794194

    482001782

    Returns: 19717

  23. 1083418454

    502431000

    Returns: 46625

  24. 129034600

    1481884249

    Returns: 1481884249

  25. 1289497509

    920149074

    Returns: 10267

  26. 1535577192

    701520105

    Returns: 19745

  27. 1041456051

    181370527

    Returns: 30133

  28. 422157696

    582612464

    Returns: 11263

  29. 1830896331

    1838984131

    Returns: 1838984131

  30. 699172182

    648946242

    Returns: 3759

  31. 870593196

    685474996

    Returns: 262433

  32. 459081709

    1100285524

    Returns: 315811

  33. 438024751

    501238221

    Returns: 29469

  34. 1153604298

    952833023

    Returns: 1692421

  35. 1013903668

    1657155039

    Returns: 552385013

  36. 1320263529

    489570217

    Returns: 48913

  37. 937158743

    1225058721

    Returns: 9959827

  38. 183175223

    669628819

    Returns: 11349641

  39. 1048257511

    1557372544

    Returns: 29056

  40. 760409201

    1967864107

    Returns: 268211

  41. 419953341

    247469247

    Returns: 27496583

  42. 1021875324

    462409942

    Returns: 15583

  43. 601141236

    466382842

    Returns: 115613

  44. 1341484503

    1403068057

    Returns: 102511

  45. 186943562

    1264112143

    Returns: 65023

  46. 962386688

    1630142419

    Returns: 1630142419

  47. 1018782770

    1039826683

    Returns: 148546669

  48. 1074542221

    1564742500

    Returns: 63125

  49. 86051548

    1294935030

    Returns: 27711

  50. 1108461536

    1329872031

    Returns: 147763559

  51. 1871075132

    1998323884

    Returns: 665221

  52. 418029632

    914301789

    Returns: 304767263

  53. 637791154

    1005003430

    Returns: 100500343

  54. 1043525525

    1862678107

    Returns: 1862678107

  55. 814068936

    818195136

    Returns: 387403

  56. 1976056747

    52244468

    Returns: 768301

  57. 22

    4

    Returns: 2

  58. 944169767

    927465625

    Returns: 296789

  59. 21

    21

    Returns: 1

  60. 1

    1483509662

    Returns: 741754831

  61. 1199999858

    1799999787

    Returns: 3

  62. 1000000000

    750000001

    Returns: 158663


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: