Statistics

Problem Statement for "PermutationAndMultiplication"

Problem Statement

You are given two ints: ones and zeroes. You need to do the following:

  1. Let A be the largest integer whose binary representation consists of exactly ones 1s and zeroes 0s.
  2. Let B be the smallest integer whose binary representation consists of exactly ones 1s and zeroes 0s.
  3. Let C = A*B.

Compute and return the number of 1s in the binary representation of C.

Definition

Class:
PermutationAndMultiplication
Method:
multiplyAndCount
Parameters:
int, int
Returns:
int
Method signature:
int multiplyAndCount(int ones, int zeroes)
(be sure your method is public)

Notes

  • The binary representations of A and B are not allowed to have leading zeroes.

Constraints

  • ones will be between 1 and 200,000, inclusive
  • zeroes will be between 0 and 200,000, inclusive

Examples

  1. 26

    32

    Returns: 52

  2. 35

    5

    Returns: 35

  3. 20

    20

    Returns: 40

  4. 5

    8

    Returns: 10

  5. 9

    21

    Returns: 18

  6. 36

    13

    Returns: 36

  7. 16

    10

    Returns: 16

  8. 37

    11

    Returns: 37

  9. 1

    19

    Returns: 1

  10. 36

    31

    Returns: 36

  11. 31

    15

    Returns: 31

  12. 38

    7

    Returns: 38

  13. 12

    23

    Returns: 24

  14. 16

    8

    Returns: 16

  15. 37

    16

    Returns: 37

  16. 22

    33

    Returns: 44

  17. 26

    21

    Returns: 26

  18. 28

    22

    Returns: 28

  19. 32

    19

    Returns: 32

  20. 25

    37

    Returns: 50

  21. 222

    924

    Returns: 444

  22. 423

    556

    Returns: 846

  23. 819

    316

    Returns: 819

  24. 109

    433

    Returns: 218

  25. 990

    223

    Returns: 990

  26. 733

    40

    Returns: 733

  27. 685

    705

    Returns: 1370

  28. 254

    354

    Returns: 508

  29. 695

    364

    Returns: 695

  30. 699

    928

    Returns: 1398

  31. 538

    630

    Returns: 1076

  32. 297

    548

    Returns: 594

  33. 477

    888

    Returns: 954

  34. 765

    416

    Returns: 765

  35. 279

    672

    Returns: 558

  36. 700

    452

    Returns: 700

  37. 983

    936

    Returns: 983

  38. 138

    884

    Returns: 276

  39. 721

    349

    Returns: 721

  40. 76

    536

    Returns: 152

  41. 895

    80

    Returns: 895

  42. 789

    451

    Returns: 789

  43. 726

    272

    Returns: 726

  44. 829

    469

    Returns: 829

  45. 357

    119

    Returns: 357

  46. 93

    385

    Returns: 186

  47. 882

    113

    Returns: 882

  48. 300

    751

    Returns: 600

  49. 380

    336

    Returns: 380

  50. 621

    547

    Returns: 621

  51. 188302

    116192

    Returns: 188302

  52. 137189

    154421

    Returns: 274378

  53. 121715

    60088

    Returns: 121715

  54. 107107

    99309

    Returns: 107107

  55. 44687

    70249

    Returns: 89374

  56. 58865

    24258

    Returns: 58865

  57. 193427

    114719

    Returns: 193427

  58. 101552

    125051

    Returns: 203104

  59. 96506

    117547

    Returns: 193012

  60. 141212

    187812

    Returns: 282424

  61. 134060

    108148

    Returns: 134060

  62. 134190

    47414

    Returns: 134190

  63. 81802

    45594

    Returns: 81802

  64. 23520

    95037

    Returns: 47040

  65. 164138

    32072

    Returns: 164138

  66. 126216

    46081

    Returns: 126216

  67. 80467

    116716

    Returns: 160934

  68. 179026

    29456

    Returns: 179026

  69. 168134

    137589

    Returns: 168134

  70. 199085

    151207

    Returns: 199085

  71. 114727

    149961

    Returns: 229454

  72. 108052

    96513

    Returns: 108052

  73. 61433

    175741

    Returns: 122866

  74. 40952

    187671

    Returns: 81904

  75. 169251

    142654

    Returns: 169251

  76. 161972

    175374

    Returns: 323944

  77. 119457

    150713

    Returns: 238914

  78. 49438

    163488

    Returns: 98876

  79. 80899

    64302

    Returns: 80899

  80. 79019

    126203

    Returns: 158038

  81. 68991

    181481

    Returns: 137982

  82. 42675

    96291

    Returns: 85350

  83. 134136

    49900

    Returns: 134136

  84. 159552

    86579

    Returns: 159552

  85. 50172

    20845

    Returns: 50172

  86. 162494

    116509

    Returns: 162494

  87. 156869

    83031

    Returns: 156869

  88. 158400

    46772

    Returns: 158400

  89. 66510

    81354

    Returns: 133020

  90. 111682

    198999

    Returns: 223364

  91. 163279

    60060

    Returns: 163279

  92. 29738

    105350

    Returns: 59476

  93. 63707

    35150

    Returns: 63707

  94. 47347

    141740

    Returns: 94694

  95. 136088

    128379

    Returns: 136088

  96. 79790

    28657

    Returns: 79790

  97. 114340

    106800

    Returns: 114340

  98. 114207

    75327

    Returns: 114207

  99. 127022

    49063

    Returns: 127022

  100. 150454

    36714

    Returns: 150454

  101. 189929

    28016

    Returns: 189929

  102. 142039

    69752

    Returns: 142039

  103. 146593

    158175

    Returns: 293186

  104. 179964

    103731

    Returns: 179964

  105. 121473

    95543

    Returns: 121473

  106. 152759

    138035

    Returns: 152759

  107. 108834

    85537

    Returns: 108834

  108. 35710

    32931

    Returns: 35710

  109. 188493

    141082

    Returns: 188493

  110. 105046

    36002

    Returns: 105046

  111. 44818

    24693

    Returns: 44818

  112. 67524

    64512

    Returns: 67524

  113. 181121

    119157

    Returns: 181121

  114. 189184

    151971

    Returns: 189184

  115. 128802

    42879

    Returns: 128802

  116. 192889

    100265

    Returns: 192889

  117. 62225

    84598

    Returns: 124450

  118. 198160

    28574

    Returns: 198160

  119. 65242

    173233

    Returns: 130484

  120. 106769

    20442

    Returns: 106769

  121. 114983

    95759

    Returns: 114983

  122. 97557

    150531

    Returns: 195114

  123. 195295

    156635

    Returns: 195295

  124. 53795

    130850

    Returns: 107590

  125. 59990

    70876

    Returns: 119980

  126. 35252

    22317

    Returns: 35252

  127. 184782

    100758

    Returns: 184782

  128. 62802

    35312

    Returns: 62802

  129. 129870

    62424

    Returns: 129870

  130. 176275

    104322

    Returns: 176275

  131. 154384

    147725

    Returns: 154384

  132. 22348

    132307

    Returns: 44696

  133. 195403

    71893

    Returns: 195403

  134. 67314

    108913

    Returns: 134628

  135. 46778

    125521

    Returns: 93556

  136. 22258

    48929

    Returns: 44516

  137. 73888

    100536

    Returns: 147776

  138. 134828

    60034

    Returns: 134828

  139. 171530

    166124

    Returns: 171530

  140. 29572

    197306

    Returns: 59144

  141. 152352

    125382

    Returns: 152352

  142. 87355

    132863

    Returns: 174710

  143. 118844

    94357

    Returns: 118844

  144. 139083

    170453

    Returns: 278166

  145. 164213

    171041

    Returns: 328426

  146. 44563

    60562

    Returns: 89126

  147. 100553

    25091

    Returns: 100553

  148. 95433

    58568

    Returns: 95433

  149. 81578

    80829

    Returns: 81578

  150. 126524

    137052

    Returns: 253048

  151. 2

    2

    Returns: 4

    A = 12 (in decimal) = 1100 (in binary) B = 9 (in decimal) = 1001 (in binary) Thus, A*B = 108 (in decimal) = 1101100 (in binary). The number 1101100 contains four 1s, so the correct answer is 4.

  152. 1

    2

    Returns: 1

    Here we have A = B = 4, and thus A*B = 16. (In binary, A = B = 100 and A*B = 10000.)

  153. 1

    0

    Returns: 1

  154. 23

    0

    Returns: 23

  155. 321

    0

    Returns: 321

  156. 7465

    0

    Returns: 7465

  157. 19842

    0

    Returns: 19842

  158. 2

    0

    Returns: 2

  159. 200000

    200000

    Returns: 400000

  160. 200000

    198754

    Returns: 200000

  161. 200000

    99999

    Returns: 200000

  162. 100100

    100100

    Returns: 200200

  163. 100000

    100000

    Returns: 200000

  164. 2

    1

    Returns: 4

  165. 12

    18

    Returns: 24

  166. 6

    1

    Returns: 7

  167. 3

    0

    Returns: 3

  168. 15

    18

    Returns: 30

  169. 3

    1

    Returns: 4

  170. 13

    7

    Returns: 13

  171. 3

    2

    Returns: 3


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: