Statistics

Problem Statement for "TapeMeasure"

Problem Statement

Here's the beginning of an ASCII art bitmap that depicts a tape measure:

###################################################
# # # # # # # # # # # # # # # # # # # # # # # # # #
#         #         #         #         #         #
#                   #                   #          
0                   10                  20         

A more formal description:

  • The first row is full of '#' marks and represents the top edge of the tape measure.
  • The second row shows unit marks in every second column.
  • Multiples of five get a longer mark that continues into the third row.
  • Multiples of ten get a mark that reaches all the way into the fourth row, and they also get labels in the fifth row. The label always begins in the column with the mark and extends to the right as needed.

You are given the ints leftMark and rightMark. Construct the drawing of the part of the tape measure that begins with the column containing the mark for number leftMark and ends with the column that contains the mark for the number rightMark. Return the drawing as a String[].

Definition

Class:
TapeMeasure
Method:
draw
Parameters:
int, int
Returns:
String[]
Method signature:
String[] draw(int leftMark, int rightMark)
(be sure your method is public)

Constraints

  • leftMark will be between 0 and 999, inclusive.
  • rightMark will be between leftMark and 999, inclusive.
  • rightMark - leftMark will be at most 25.

Examples

  1. 0

    25

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", "# # # # # #", "# # # ", "0 10 20 " }

    This is the exact example shown in the problem statement.

  2. 981

    990

    Returns: {"###################", "# # # # # # # # # #", " # #", " #", "0 9" }

    Note how the labels for marks 980 and 990 are partially visible in this section of the tape measure. Below we show a section of the tape measure that is one mark wider on each side (left=980, right=991) so that you can see these labels completely. ####################### # # # # # # # # # # # # # # # # # 980 990

  3. 20

    20

    Returns: {"#", "#", "#", "#", "2" }

  4. 31

    38

    Returns: {"###############", "# # # # # # # #", " # ", " ", " " }

  5. 64

    75

    Returns: {"#######################", "# # # # # # # # # # # #", " # # #", " # ", " 70 " }

  6. 566

    579

    Returns: {"###########################", "# # # # # # # # # # # # # #", " # # ", " # ", " 570 " }

  7. 584

    598

    Returns: {"#############################", "# # # # # # # # # # # # # # #", " # # # ", " # ", " 590 " }

  8. 263

    273

    Returns: {"#####################", "# # # # # # # # # # #", " # # ", " # ", " 270 " }

  9. 395

    411

    Returns: {"#################################", "# # # # # # # # # # # # # # # # #", "# # # # ", " # # ", " 400 410" }

  10. 630

    642

    Returns: {"#########################", "# # # # # # # # # # # # #", "# # # ", "# # ", "630 640 " }

  11. 814

    815

    Returns: {"###", "# #", " #", " ", " " }

  12. 674

    687

    Returns: {"###########################", "# # # # # # # # # # # # # #", " # # # ", " # ", " 680 " }

  13. 980

    980

    Returns: {"#", "#", "#", "#", "9" }

  14. 0

    3

    Returns: {"#######", "# # # #", "# ", "# ", "0 " }

  15. 965

    973

    Returns: {"#################", "# # # # # # # # #", "# # ", " # ", " 970 " }

  16. 493

    518

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 500 510 " }

  17. 559

    582

    Returns: {"###############################################", "# # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # # ", " 560 570 580 " }

  18. 939

    939

    Returns: {"#", "#", " ", " ", " " }

  19. 581

    591

    Returns: {"#####################", "# # # # # # # # # # #", " # # ", " # ", "0 590" }

  20. 235

    248

    Returns: {"###########################", "# # # # # # # # # # # # # #", "# # # ", " # ", " 240 " }

  21. 535

    542

    Returns: {"###############", "# # # # # # # #", "# # ", " # ", " 540 " }

  22. 367

    383

    Returns: {"#################################", "# # # # # # # # # # # # # # # # #", " # # # ", " # # ", " 370 380 " }

  23. 980

    994

    Returns: {"#############################", "# # # # # # # # # # # # # # #", "# # # ", "# # ", "980 990 " }

  24. 34

    41

    Returns: {"###############", "# # # # # # # #", " # # ", " # ", " 40 " }

  25. 383

    400

    Returns: {"###################################", "# # # # # # # # # # # # # # # # # #", " # # # #", " # #", " 390 4" }

  26. 704

    726

    Returns: {"#############################################", "# # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 710 720 " }

  27. 615

    626

    Returns: {"#######################", "# # # # # # # # # # # #", "# # # ", " # ", " 620 " }

  28. 571

    581

    Returns: {"#####################", "# # # # # # # # # # #", " # # ", " # ", "0 580" }

  29. 780

    798

    Returns: {"#####################################", "# # # # # # # # # # # # # # # # # # #", "# # # # ", "# # ", "780 790 " }

  30. 244

    250

    Returns: {"#############", "# # # # # # #", " # #", " #", " 2" }

  31. 860

    885

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", "# # # # # #", "# # # ", "860 870 880 " }

  32. 936

    959

    Returns: {"###############################################", "# # # # # # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", " 940 950 " }

  33. 128

    129

    Returns: {"###", "# #", " ", " ", " " }

  34. 100

    110

    Returns: {"#####################", "# # # # # # # # # # #", "# # #", "# #", "100 1" }

  35. 592

    603

    Returns: {"#######################", "# # # # # # # # # # # #", " # # ", " # ", " 600 " }

  36. 520

    532

    Returns: {"#########################", "# # # # # # # # # # # # #", "# # # ", "# # ", "520 530 " }

  37. 832

    849

    Returns: {"###################################", "# # # # # # # # # # # # # # # # # #", " # # # ", " # ", " 840 " }

  38. 99

    107

    Returns: {"#################", "# # # # # # # # #", " # # ", " # ", " 100 " }

  39. 892

    912

    Returns: {"#########################################", "# # # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", " 900 910 " }

  40. 949

    956

    Returns: {"###############", "# # # # # # # #", " # # ", " # ", " 950 " }

  41. 865

    887

    Returns: {"#############################################", "# # # # # # # # # # # # # # # # # # # # # # #", "# # # # # ", " # # ", " 870 880 " }

  42. 223

    233

    Returns: {"#####################", "# # # # # # # # # # #", " # # ", " # ", " 230 " }

  43. 762

    777

    Returns: {"###############################", "# # # # # # # # # # # # # # # #", " # # # ", " # ", " 770 " }

  44. 791

    794

    Returns: {"#######", "# # # #", " ", " ", "0 " }

  45. 619

    632

    Returns: {"###########################", "# # # # # # # # # # # # # #", " # # # ", " # # ", " 620 630 " }

  46. 691

    702

    Returns: {"#######################", "# # # # # # # # # # # #", " # # ", " # ", "0 700 " }

  47. 900

    909

    Returns: {"###################", "# # # # # # # # # #", "# # ", "# ", "900 " }

  48. 829

    853

    Returns: {"#################################################", "# # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # # ", " 830 840 850 " }

  49. 828

    835

    Returns: {"###############", "# # # # # # # #", " # #", " # ", " 830 " }

  50. 944

    961

    Returns: {"###################################", "# # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", " 950 960" }

  51. 365

    373

    Returns: {"#################", "# # # # # # # # #", "# # ", " # ", " 370 " }

  52. 578

    595

    Returns: {"###################################", "# # # # # # # # # # # # # # # # # #", " # # # #", " # # ", " 580 590 " }

  53. 495

    496

    Returns: {"###", "# #", "# ", " ", " " }

  54. 576

    585

    Returns: {"###################", "# # # # # # # # # #", " # #", " # ", " 580 " }

  55. 404

    428

    Returns: {"#################################################", "# # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 410 420 " }

  56. 967

    975

    Returns: {"#################", "# # # # # # # # #", " # #", " # ", " 970 " }

  57. 531

    554

    Returns: {"###############################################", "# # # # # # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", "0 540 550 " }

  58. 226

    251

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # # ", " 230 240 250" }

  59. 116

    135

    Returns: {"#######################################", "# # # # # # # # # # # # # # # # # # # #", " # # # #", " # # ", " 120 130 " }

  60. 861

    881

    Returns: {"#########################################", "# # # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", "0 870 880" }

  61. 388

    394

    Returns: {"#############", "# # # # # # #", " # ", " # ", " 390 " }

  62. 259

    274

    Returns: {"###############################", "# # # # # # # # # # # # # # # #", " # # # ", " # # ", " 260 270 " }

  63. 947

    966

    Returns: {"#######################################", "# # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", " 950 960 " }

  64. 152

    169

    Returns: {"###################################", "# # # # # # # # # # # # # # # # # #", " # # # ", " # ", " 160 " }

  65. 15

    29

    Returns: {"#############################", "# # # # # # # # # # # # # # #", "# # # ", " # ", " 20 " }

  66. 560

    565

    Returns: {"###########", "# # # # # #", "# #", "# ", "560 " }

  67. 823

    843

    Returns: {"#########################################", "# # # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", " 830 840 " }

  68. 84

    108

    Returns: {"#################################################", "# # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 90 100 " }

  69. 272

    274

    Returns: {"#####", "# # #", " ", " ", " " }

  70. 832

    848

    Returns: {"#################################", "# # # # # # # # # # # # # # # # #", " # # # ", " # ", " 840 " }

  71. 559

    578

    Returns: {"#######################################", "# # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", " 560 570 " }

  72. 801

    816

    Returns: {"###############################", "# # # # # # # # # # # # # # # #", " # # # ", " # ", "0 810 " }

  73. 446

    471

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # # ", " 450 460 470" }

  74. 940

    951

    Returns: {"#######################", "# # # # # # # # # # # #", "# # # ", "# # ", "940 950" }

  75. 33

    57

    Returns: {"#################################################", "# # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 40 50 " }

  76. 271

    290

    Returns: {"#######################################", "# # # # # # # # # # # # # # # # # # # #", " # # # #", " # #", "0 280 2" }

  77. 623

    643

    Returns: {"#########################################", "# # # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", " 630 640 " }

  78. 966

    982

    Returns: {"#################################", "# # # # # # # # # # # # # # # # #", " # # # ", " # # ", " 970 980 " }

  79. 931

    952

    Returns: {"###########################################", "# # # # # # # # # # # # # # # # # # # # # #", " # # # # ", " # # ", "0 940 950 " }

  80. 936

    951

    Returns: {"###############################", "# # # # # # # # # # # # # # # #", " # # # ", " # # ", " 940 950" }

  81. 653

    675

    Returns: {"#############################################", "# # # # # # # # # # # # # # # # # # # # # # #", " # # # # #", " # # ", " 660 670 " }

  82. 974

    999

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 980 990 " }

  83. 849

    859

    Returns: {"#####################", "# # # # # # # # # # #", " # # ", " # ", " 850 " }

  84. 590

    590

    Returns: {"#", "#", "#", "#", "5" }

  85. 216

    223

    Returns: {"###############", "# # # # # # # #", " # ", " # ", " 220 " }

  86. 441

    452

    Returns: {"#######################", "# # # # # # # # # # # #", " # # ", " # ", "0 450 " }

  87. 188

    210

    Returns: {"#############################################", "# # # # # # # # # # # # # # # # # # # # # # #", " # # # # #", " # # #", " 190 200 2" }

  88. 481

    486

    Returns: {"###########", "# # # # # #", " # ", " ", "0 " }

  89. 130

    136

    Returns: {"#############", "# # # # # # #", "# # ", "# ", "130 " }

  90. 139

    142

    Returns: {"#######", "# # # #", " # ", " # ", " 140 " }

  91. 803

    826

    Returns: {"###############################################", "# # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 810 820 " }

  92. 352

    370

    Returns: {"#####################################", "# # # # # # # # # # # # # # # # # # #", " # # # #", " # #", " 360 3" }

  93. 401

    417

    Returns: {"#################################", "# # # # # # # # # # # # # # # # #", " # # # ", " # ", "0 410 " }

  94. 273

    276

    Returns: {"#######", "# # # #", " # ", " ", " " }

  95. 0

    14

    Returns: {"#############################", "# # # # # # # # # # # # # # #", "# # # ", "# # ", "0 10 " }

  96. 125

    145

    Returns: {"#########################################", "# # # # # # # # # # # # # # # # # # # # #", "# # # # #", " # # ", " 130 140 " }

  97. 68

    81

    Returns: {"###########################", "# # # # # # # # # # # # # #", " # # # ", " # # ", " 70 80 " }

  98. 21

    32

    Returns: {"#######################", "# # # # # # # # # # # #", " # # ", " # ", " 30 " }

  99. 42

    50

    Returns: {"#################", "# # # # # # # # #", " # #", " #", " 5" }

  100. 185

    189

    Returns: {"#########", "# # # # #", "# ", " ", " " }

  101. 523

    546

    Returns: {"###############################################", "# # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", " 530 540 " }

  102. 205

    220

    Returns: {"###############################", "# # # # # # # # # # # # # # # #", "# # # #", " # #", " 210 2" }

  103. 791

    816

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # ", "0 800 810 " }

  104. 506

    531

    Returns: {"###################################################", "# # # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # # ", " 510 520 530" }

  105. 97

    121

    Returns: {"#################################################", "# # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # # ", " # # # ", " 100 110 120" }

  106. 1

    25

    Returns: {"#################################################", "# # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # #", " # # ", " 10 20 " }

  107. 901

    925

    Returns: {"#################################################", "# # # # # # # # # # # # # # # # # # # # # # # # #", " # # # # #", " # # ", "0 910 920 " }


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: