Вдохновленный цифрами в их полосах и 1, 2, Fizz, 4, Buzz
Вступление
Ваша задача - сгенерировать точно такой вывод:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
17
Fizz
19
Buzz
Fizz
22
23
Fizz
Buzz
26
Fizz
28
29
FizzBuzz
31
32
Fizz
34
Buzz
Fizz
37
38
Fizz
Buzz
41
Fizz
43
44
FizzBuzz
46
47
Fizz
49
Buzz
Вызов
Это задание основано на задании Fizz Buzz, и здесь подведем итоги: выведите числа от 1 до 100 включительно, каждое число в отдельной строке, но если число кратно 3, вы должны вывести «Fizz» вместо Исходное число, если число кратно 5, вы должны вывести «Buzz» вместо исходного числа. Если число кратно 15, вы должны вывести «FizzBuzz» вместо исходного числа.
Однако в дополнение к вышеприведенному требованию следует также сделать отступ в каждой строке, используя пробелы, чтобы каждый столбец содержал только уникальные символы (исключая пробелы и символы новой строки). Пробелы, добавленные к каждой строке, - это минимум, необходимый для того, чтобы все строки появились до того, как в нем (включительно) появятся уникальные символы в каждом столбце.
Например, 1,2,Fizz,4
не нужен никакой отступы , потому что они уже имеют уникальные символы в каждом столбце (столбец 1: 12F4
, column2: i
, колонка3: z
, column4: z
), но при добавлении Buzz
мы должны отступ два пробелов , потому что в противном случае мы имели бы два z
«ю.ш. как в 3-м, так и в 4-м столбце. Поскольку для достижения цели достаточно двух пробелов, вы не должны делать отступ от трех пробелов. 7
и 8
не требует отступа, но при выводе 11
нам нужно сделать отступ на один пробел, потому что в 1-м столбце уже есть 1
. 13
затем нужно сделать отступ в три пробела, потому что теперь все столбцы 1, 2 и 3 имеют a 1
. Отступы для остальных строк следуют тому же правилу.
Чтобы упростить задачу, верхний предел был изменен на 50.
Спекуляции
Вы можете написать программу или функцию. Ни один из них не должен принимать непустые данные. Взять пустой ввод - это нормально.
Так как это задача KC, вам нужно создать вывод, как указано в разделе «Введение». Единственный трейлинг-перевод строки хорош. Нет заголовков или новых пробелов. Никаких дополнительных пробелов для каждой строки.
Ваша программа может завершиться с ошибкой или иметь непустой вывод STDERR, если STDOUT соответствует спецификации.
Это внутриязыковой код-гольф , программа с наименьшим количеством байтов выигрывает на своем языке.
Применяются лазейки по умолчанию .