Statistics

Problem Statement for "FibonacciSum"

Problem Statement

Depicted below is the Fibonacci sequence:
   1, 1, 2, 3, 5, 8, 13, 21, 34, ...
As you can see, each value from 2 on is the sum of the previous two values. Any positive integer can be written as a sum of values taken from the Fibonacci sequence. These values need not be distinct. Return the smallest number of such values that sum to n.

Definition

Class:
FibonacciSum
Method:
howMany
Parameters:
int
Returns:
int
Method signature:
int howMany(int n)
(be sure your method is public)

Constraints

  • n will be between 1 and 1000000 inclusive.

Examples

  1. 1

    Returns: 1

    Just a single number is required.

  2. 7

    Returns: 2

    The best we can do is 5+2 = 7.

  3. 70

    Returns: 3

    The best here is 34+34+2 = 70.

  4. 1000000

    Returns: 5

  5. 999999

    Returns: 8

  6. 2

    Returns: 1

  7. 3

    Returns: 1

  8. 4

    Returns: 2

  9. 5

    Returns: 1

  10. 6

    Returns: 2

  11. 8

    Returns: 1

  12. 9

    Returns: 2

  13. 10

    Returns: 2

  14. 11

    Returns: 2

  15. 12

    Returns: 3

  16. 13

    Returns: 1

  17. 14

    Returns: 2

  18. 15

    Returns: 2

  19. 16

    Returns: 2

  20. 17

    Returns: 3

  21. 18

    Returns: 2

  22. 19

    Returns: 3

  23. 20

    Returns: 3

  24. 21

    Returns: 1

  25. 999998

    Returns: 8

  26. 999997

    Returns: 7

  27. 999996

    Returns: 8

  28. 999995

    Returns: 7

  29. 999994

    Returns: 7

  30. 999993

    Returns: 7

  31. 999992

    Returns: 6

  32. 999991

    Returns: 8

  33. 999990

    Returns: 7

  34. 999989

    Returns: 7

  35. 240902

    Returns: 7

  36. 918284

    Returns: 7

  37. 865065

    Returns: 7

  38. 270670

    Returns: 10

  39. 267570

    Returns: 9

  40. 707025

    Returns: 10

  41. 849860

    Returns: 6

  42. 798082

    Returns: 9

  43. 50960

    Returns: 4

  44. 520498

    Returns: 8

  45. 518827

    Returns: 6

  46. 776432

    Returns: 9

  47. 34861

    Returns: 7

  48. 726516

    Returns: 9

  49. 702071

    Returns: 10

  50. 996511

    Returns: 10

  51. 723975

    Returns: 9

  52. 618373

    Returns: 8

  53. 70218

    Returns: 8

  54. 527869

    Returns: 5

  55. 107

    Returns: 3

  56. 832040

    Returns: 1

  57. 2584

    Returns: 1

  58. 2585

    Returns: 2

  59. 4181

    Returns: 1

  60. 4182

    Returns: 2

  61. 6765

    Returns: 1

  62. 6766

    Returns: 2

  63. 10946

    Returns: 1

  64. 10947

    Returns: 2

  65. 17711

    Returns: 1

  66. 17712

    Returns: 2

  67. 28657

    Returns: 1

  68. 28658

    Returns: 2

  69. 46368

    Returns: 1

  70. 46369

    Returns: 2

  71. 75025

    Returns: 1

  72. 75026

    Returns: 2

  73. 121393

    Returns: 1

  74. 121394

    Returns: 2

  75. 196418

    Returns: 1

  76. 196419

    Returns: 2

  77. 999003

    Returns: 10

  78. 999999

    Returns: 8

  79. 1000000

    Returns: 5

  80. 107

    Returns: 3

  81. 514228

    Returns: 14

  82. 832040

    Returns: 1

  83. 992781

    Returns: 12

  84. 271442

    Returns: 13

  85. 999998

    Returns: 8


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: