fork download
  1. #!/usr/bin/perl
  2.  
  3. use warnings;
  4. use strict;
  5.  
  6. my $i;
  7. my @A;
  8. while(<DATA>){
  9. /\d/ ? $i = $& : push @{ $A[$i] }, $_;
  10. }
  11.  
  12. chomp( @_ = <> );
  13.  
  14. my $regex = join ".{721}", map { s/\./\\./gr =~ y/-/./r } @_[0..9];
  15.  
  16. my @L;
  17. push @L, ('.' x 5 . ( 'X' x 2 . '.' x 10 ) x 64 . 'X' x 2 . '.' x 5) x 2;
  18. push @L, '.' x length $L[0];
  19.  
  20. for my $i ( 'a26', 0, 'a48', (map { (split //, $_ * 5), 'a44' } reverse 2 .. 11), 'a4', 5, 'a52', 0, 'a26' ){
  21. for my $j (0 .. 6){
  22. $L[$j + 3] .= $i =~ /a(\d+)/ ? '.' x $1 : $A[$i][$j]
  23. }
  24. }
  25.  
  26. my $L = join "\n", @L;
  27.  
  28. $L =~ s/$regex.*//s or print "NOOOOO!\n";
  29.  
  30. my $sec5 = (720 - length $L) % 720;
  31.  
  32. printf "%02d:%02d\n", (int $sec5 / 12), 5 * ($sec5 % 12);
  33.  
  34.  
  35. __DATA__
  36. 0
  37. .XXXXX..
  38. XX..XXX.
  39. XX.XXXX.
  40. XXXX.XX.
  41. XXX..XX.
  42. XXX..XX.
  43. .XXXXX..
  44. ........
  45. 1
  46. ...XX...
  47. ..XXX...
  48. .XXXX...
  49. ...XX...
  50. ...XX...
  51. ...XX...
  52. .XXXXXX.
  53. ........
  54. 2
  55. .XXXXX..
  56. XX...XX.
  57. .....XX.
  58. ...XXX..
  59. .XXX....
  60. XX......
  61. XXXXXXX.
  62. ........
  63. 3
  64. .XXXXX..
  65. XX...XX.
  66. .....XX.
  67. ..XXXX..
  68. .....XX.
  69. XX...XX.
  70. .XXXXX..
  71. ........
  72. 4
  73. ...XXX..
  74. ..XXXX..
  75. .XX.XX..
  76. XX..XX..
  77. XXXXXXX.
  78. ....XX..
  79. ...XXXX.
  80. ........
  81. 5
  82. XXXXXXX.
  83. XX......
  84. XXXXXX..
  85. .....XX.
  86. .....XX.
  87. XX...XX.
  88. .XXXXX..
  89. ........
  90. 6
  91. .XXXXX..
  92. XX...XX.
  93. XX......
  94. XXXXXX..
  95. XX...XX.
  96. XX...XX.
  97. .XXXXX..
  98. ........
  99. 7
  100. XXXXXXX.
  101. XX...XX.
  102. X....XX.
  103. ....XX..
  104. ...XX...
  105. ..XX....
  106. ..XX....
  107. ........
  108. 8
  109. .XXXXX..
  110. XX...XX.
  111. XX...XX.
  112. .XXXXX..
  113. XX...XX.
  114. XX...XX.
  115. .XXXXX..
  116. ........
  117. 9
  118. .XXXXX..
  119. XX...XX.
  120. XX...XX.
  121. .XXXXXX.
  122. .....XX.
  123. XX...XX.
  124. .XXXXX..
  125. ........
  126.  
Success #stdin #stdout 0s 6188KB
stdin
-------X..........XX..........XX..........XX.........-------
----..XX..........XX..........XX..........XX..........XX----
-..........................................................-
X..................................................XXXXXXX..
XX.................................................XX.......
XX.................................................XXXXXX...
XX......................................................XX..
XX......................................................XX..
XX.................................................XX...XX..
-...................................................XXXXX..-
----....................................................----
-------..............................................-------
stdout
07:05