Statistics

Problem Statement for "DigitHoles"

Problem Statement

Elly's evil teacher assistant Torb has given her the following puzzle: 42 -> 1, 1337 -> 0, 669 -> 3, 1882 -> 4, 688 -> 5, 12345 -> 1, 67890 -> 5, 123 -> 0, 456 -> 2, 789 -> 3. Given this information, 45678 -> ? Thanks to her fast thinking and problem-solving intuition she has found the solution: Google. The answer turned out to be the total number of "holes" in the digits of the number's decimal representation (with no extra leading zeroes). We can see that the digits 1, 2, 3, 5, and 7 contain no holes, 0, 4, 6, and 9 each has one hole, and 8 contains two holes. Therefore the answer to the puzzle is 45678 -> 1 + 0 + 1 + 0 + 2 = 4.

You want to impress Elly, so you decide to write a program that will find the correct answer for certain integers. Given an int number, return the total number of holes in that number.

Definition

Class:
DigitHoles
Method:
numHoles
Parameters:
int
Returns:
int
Method signature:
int numHoles(int number)
(be sure your method is public)

Notes

  • In some fonts, the digit '4' might not contain an enclosed hole, but for this problem you should assume it does.

Constraints

  • number will be between 1 and 1000, inclusive.

Examples

  1. 42

    Returns: 1

    4 has one hole, and 2 has no holes.

  2. 669

    Returns: 3

    Both sixes are counted.

  3. 688

    Returns: 5

    Note that 8 is the only digit that has 2 holes.

  4. 123

    Returns: 0

    A number without holes.

  5. 456

    Returns: 2

  6. 789

    Returns: 3

  7. 1

    Returns: 0

  8. 2

    Returns: 0

  9. 3

    Returns: 0

  10. 4

    Returns: 1

  11. 5

    Returns: 0

  12. 6

    Returns: 1

  13. 7

    Returns: 0

  14. 8

    Returns: 2

  15. 9

    Returns: 1

  16. 10

    Returns: 1

  17. 468

    Returns: 4

  18. 335

    Returns: 0

  19. 501

    Returns: 1

  20. 170

    Returns: 1

  21. 725

    Returns: 0

  22. 479

    Returns: 2

  23. 359

    Returns: 1

  24. 963

    Returns: 2

  25. 465

    Returns: 2

  26. 706

    Returns: 2

  27. 146

    Returns: 2

  28. 282

    Returns: 2

  29. 828

    Returns: 4

  30. 962

    Returns: 2

  31. 492

    Returns: 2

  32. 996

    Returns: 3

  33. 943

    Returns: 2

  34. 437

    Returns: 1

  35. 392

    Returns: 1

  36. 605

    Returns: 2

  37. 903

    Returns: 2

  38. 154

    Returns: 1

  39. 293

    Returns: 1

  40. 383

    Returns: 2

  41. 422

    Returns: 1

  42. 717

    Returns: 0

  43. 719

    Returns: 1

  44. 896

    Returns: 4

  45. 448

    Returns: 4

  46. 727

    Returns: 0

  47. 772

    Returns: 0

  48. 539

    Returns: 1

  49. 870

    Returns: 3

  50. 913

    Returns: 1

  51. 668

    Returns: 4

  52. 300

    Returns: 2

  53. 36

    Returns: 1

  54. 895

    Returns: 3

  55. 704

    Returns: 2

  56. 812

    Returns: 2

  57. 323

    Returns: 0

  58. 334

    Returns: 1

  59. 674

    Returns: 2

  60. 665

    Returns: 2

  61. 142

    Returns: 1

  62. 712

    Returns: 0

  63. 254

    Returns: 1

  64. 869

    Returns: 4

  65. 548

    Returns: 3

  66. 645

    Returns: 2

  67. 663

    Returns: 2

  68. 758

    Returns: 2

  69. 38

    Returns: 2

  70. 860

    Returns: 4

  71. 724

    Returns: 1

  72. 742

    Returns: 1

  73. 530

    Returns: 1

  74. 779

    Returns: 1

  75. 317

    Returns: 0

  76. 191

    Returns: 1

  77. 843

    Returns: 3

  78. 289

    Returns: 3

  79. 107

    Returns: 1

  80. 41

    Returns: 1

  81. 265

    Returns: 1

  82. 649

    Returns: 3

  83. 447

    Returns: 2

  84. 806

    Returns: 4

  85. 891

    Returns: 3

  86. 730

    Returns: 1

  87. 371

    Returns: 0

  88. 351

    Returns: 0

  89. 102

    Returns: 1

  90. 394

    Returns: 2

  91. 549

    Returns: 2

  92. 630

    Returns: 2

  93. 624

    Returns: 2

  94. 85

    Returns: 2

  95. 955

    Returns: 1

  96. 757

    Returns: 0

  97. 841

    Returns: 3

  98. 967

    Returns: 2

  99. 377

    Returns: 0

  100. 932

    Returns: 1

  101. 309

    Returns: 2

  102. 945

    Returns: 2

  103. 440

    Returns: 3

  104. 627

    Returns: 1

  105. 324

    Returns: 1

  106. 538

    Returns: 2

  107. 119

    Returns: 1

  108. 83

    Returns: 2

  109. 930

    Returns: 2

  110. 542

    Returns: 1

  111. 834

    Returns: 3

  112. 116

    Returns: 1

  113. 640

    Returns: 3

  114. 659

    Returns: 2

  115. 705

    Returns: 1

  116. 931

    Returns: 1

  117. 978

    Returns: 3

  118. 307

    Returns: 1

  119. 387

    Returns: 2

  120. 22

    Returns: 0

  121. 1000

    Returns: 3

    One thousand.

  122. 888

    Returns: 6

  123. 100

    Returns: 2

  124. 808

    Returns: 5

  125. 256

    Returns: 1

  126. 302

    Returns: 1

  127. 88

    Returns: 4

  128. 44

    Returns: 2

  129. 780

    Returns: 3

  130. 101

    Returns: 1

  131. 108

    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: