Введение
Atari ST был довольно популярным персональным компьютером с середины 80 - х до начала 90 -х годов эпохи, питание от Motorola 68000 микропроцессор. На этой машине стандартное поведение операционной системы для неперехваченных исключений ЦП заключалось в отображении ряда бомб на экране, как показано на следующем рисунке:
Источник: https://commons.wikimedia.org/wiki/File:Row_of_bombs.png
NB. В зависимости от версии ОС, изображение бомбы может немного отличаться. Но давайте возьмем это как ссылку.
Количество бомб зависит от вектора исключения, наиболее распространенными из которых являются:
- ($ 008) Ошибка автобуса: 2 бомбы
- ($ 00c) Ошибка адреса: 3 бомбы
- ($ 010) Незаконная инструкция: 4 бомбы
Цель
Ваша цель - написать программу или функцию, которая печатает или выводит искусство ASCII таких бомб Atari ST.
вход
Целое число, представляющее количество бомб для отображения. Ваш код должен поддерживать наиболее распространенные значения: 2, 3 и 4. Поддержка меньшего количества и / или большего количества бомб - это хорошо, но это не требуется и не подлежит бонусу.
Выход
Оригинальная бомба состоит из плитки размером 16x16 пикселей, представленной здесь как в формате ASCII, так и в двоичном виде:
....##.......... 0000110000000000
.#.#..#......... 0101001000000000
.......#........ 0000000100000000
#..#....#....... 1001000010000000
..#...#####..... 0010001111100000
......#####..... 0000001111100000
....#########... 0000111111111000
...###########.. 0001111111111100
...###########.. 0001111111111100
..#############. 0011111111111110
..########.####. 0011111111011110
...#######.###.. 0001111111011100
...######.####.. 0001111110111100
....#########... 0000111111111000
.....#######.... 0000011111110000
.......###...... 0000000111000000
В этом испытании каждая бомба ASCII должна быть увеличена вдвое по сравнению с первоначальной шириной для лучшего рендеринга. Следовательно, он будет состоять из 16 строк по 32 символа с использованием ##
пикселей «ON» и двух пробелов для пикселей «OFF». Все плитки бомбы должны быть положены рядом. Ведущие пробелы запрещены. Замыкающие пробелы также запрещены, кроме тех, которые фактически являются частью плитки бомбы (то есть 31-й и 32-й столбцы), которые должны присутствовать. Вы можете включить не более одного разрыва строки и не более одного разрыва строки.
пример
Ниже приведен эталонный выход для двух бомб, где обязательные разрывы строк отмечены как, \n
а допустимые дополнительные разрывы строк отмечены как (\n)
:
(\n)
#### #### \n
## ## ## ## ## ## \n
## ## \n
## ## ## ## ## ## \n
## ########## ## ########## \n
########## ########## \n
################## ################## \n
###################### ###################### \n
###################### ###################### \n
########################## ########################## \n
################ ######## ################ ######## \n
############## ###### ############## ###### \n
############ ######## ############ ######## \n
################## ################## \n
############## ############## \n
###### ###### (\n)
(Конечно, другие форматы переноса строк, такие как \r
или \r\n
могут быть использованы так же хорошо.)
правила
Это код-гольф, поэтому выигрывает самый короткий ответ в байтах. Стандартные лазейки запрещены.