Statistics

Problem Statement for "DigitFiller"

Problem Statement

You have k objects divided evenly into num piles. Unfortunately, some of the digits of k may have been erased (replaced with 'X's in the input). Return the number of possible values that k could have been.

Definition

Class:
DigitFiller
Method:
howMany
Parameters:
String, int
Returns:
long
Method signature:
long howMany(String k, int num)
(be sure your method is public)

Constraints

  • k will contain between 2 and 18 characters inclusive.
  • Each character in k will be a digit ('0'-'9') or 'X'.
  • Character 0 of k will be a positive digit ('1'-'9').
  • num will be between 1 and 10000 inclusive.
  • The return value will be at least 1.

Examples

  1. "8X"

    9

    Returns: 1

    Since the objects are divided evenly into 9 piles, 81 is the only possible solution.

  2. "1XX"

    10

    Returns: 10

    Here there are 10 possible values k could have been.

  3. "14"

    7

    Returns: 1

    None of the digits are missing.

  4. "9999999999999X"

    3

    Returns: 4

  5. "23X34XX24XX34X"

    17

    Returns: 58823

  6. "9XXXXXXXXXXXXXXXXX"

    1

    Returns: 100000000000000000

  7. "9X9X"

    9999

    Returns: 1

  8. "7XXX"

    7234

    Returns: 1

  9. "123829382XX"

    99

    Returns: 1

  10. "3X8XXX99X04XXXXX7X"

    8543

    Returns: 11705428

  11. "70XX3XXX7X1"

    6563

    Returns: 150

  12. "9X5X4XXX883X61X6X"

    9099

    Returns: 10990

  13. "33X78X0131XX2X"

    8758

    Returns: 12

  14. "5X11087XX5XX"

    7880

    Returns: 11

  15. "5XXX34XX27"

    3399

    Returns: 29

  16. "4346XX7X"

    89

    Returns: 10

  17. "73X3X06X5XXX"

    6035

    Returns: 140

  18. "28XXX2"

    3448

    Returns: 1

  19. "28X5XX3X7XX15XXX"

    8107

    Returns: 123372

  20. "5X84XXXX"

    4531

    Returns: 23

  21. "9227XXXX"

    2986

    Returns: 4

  22. "66XX665XXXXX5XX3"

    3227

    Returns: 309886

  23. "9XXXXX8"

    4052

    Returns: 49

  24. "3X46XXX31XX2X3XX6"

    6116

    Returns: 326988

  25. "74XX66X13XXX0"

    1769

    Returns: 566

  26. "9XX56X8X3XX"

    3296

    Returns: 293

  27. "65X6XX2X"

    119

    Returns: 80

  28. "68XXXX6XXXXX"

    9138

    Returns: 109433

  29. "4XXXXXX"

    1632

    Returns: 613

  30. "2X5XXX319X22XX8XXX"

    8114

    Returns: 1232437

  31. "5X812XXX"

    2751

    Returns: 5

  32. "13XXXX"

    2282

    Returns: 5

  33. "23XXX8XXXX"

    175

    Returns: 57143

  34. "7XXX2X5713XX2"

    4116

    Returns: 485

  35. "3XXX0X52X7X80X1XX"

    6376

    Returns: 150610

  36. "2XX9X3XXXX9"

    1567

    Returns: 6381

  37. "72XXX2XXX6"

    8319

    Returns: 123

  38. "3XX8X9XX88X9X2XXX"

    2690

    Returns: 3717482


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: