Характеристики
Учитывая число n
, выведите ASCII "мем-стрелку" (больше символа >
) размера n
.
n
всегда будет положительным целым числом, больше 0.
Примеры
n = 2
\
\
/
/
n = 5
\
\
\
\
\
/
/
/
/
/
Образец кода
Вот пример программы, написанной на Crystal, которая возвращает правильные результаты. Запустите это как ./arrow 10
.
arrow.cr
:
def f(i)
i.times { |j|
j.times { print ' ' }
puts "\\"
}
i.times { |j|
(i-j-1).times { print ' ' }
puts '/'
}
end
f(ARGV[0].to_i)
правила
- Это код-гольф . Самый короткий ответ выигрывает. Однако я не буду выбирать ответ, потому что самый короткий ответ может меняться со временем.
- Стандартные лазейки не допускаются.
n
быть ноль?Ответы:
Холст 2 байта
Попробуй это здесь!
источник
C (gcc) , 56 байтов
Попробуйте онлайн!
источник
Python 2 , 54 байта
Попробуйте онлайн!
Выходы с завершающим переводом строки.
источник
05AB1E , 6 байтов
Попробуйте онлайн!
объяснение
источник
C # (интерактивный компилятор Visual C #) , 66 байт
Сохраненный байт благодаря @someone.
Попробуйте онлайн!
источник
n*2-b-1
->n*2+~b
C64Mini / C64 BASIC (и другие варианты CBM BASIC), используется 52 токенизированных байта BASIC
Вот необъясненная версия для объяснения:
То, что число вводится в
N
нулевой строке, уменьшается на единицу, посколькуTAB
команда индексируется с нуля; ЭтиFOR/NEXT
петли в двух строках через четыре и пять до семи , то вывести верхнюю и нижнюю часть , еслиmeme
стрелка соответственно (представлены сдвинутымM
и смещенногоN
в графическом режиме источником )источник
for
может бытьfO
(f
- shofto
),print
есть?
и т. Д.0inputn:n=n-1:fOi=0ton:?tA(i)"\":nE:fOi=0ton:?tA(i)"/":nE
- это занимает 57 байтов.MarioLANG ,
719677 байтПопробуйте онлайн!
Это было сложнее, чем ожидалось ...
источник
брейкфук 125 байтов
Попробуйте онлайн!
источник
Рубин ,
11199777368645756 байт-12 байтов благодаря Бенджамину Уркварту , -43 благодаря ручной работе и -2 байта благодаря Value Ink .
Попробуйте онлайн!
Объяснение:
Альтернативные (но более длинные) решения
Друг прочитал этот ответ, а затем попытался придумать еще пару подходов. Выкладываю их и здесь, чтобы они не потерялись для огромных сетей.
ввод и выгрузка, 72 байта
Попробуйте онлайн!
вниз, вводить и не сдвигаться, 80 байтов
Попробуйте онлайн!
интригующий, два не вложенных цикла, 127 байт
Попробуйте онлайн!
источник
String#rjust
( попробуйте онлайн! ).Perl 5
-p
, 36 байтПопробуйте онлайн!
источник
Код T-SQL, 80 байт
Попробуйте онлайн
Запрос T-SQL, 96 байт
Чтобы сделать эту работу онлайн, мне пришлось внести некоторые незначительные изменения. Пробелы в начале строки не отображаются в онлайн-фрагменте. Поэтому я использую Ascii 160 вместо. При работе в Management Studio можно изменить настройки, чтобы отобразить результат в виде текста, что приведет к правильным пробелам в этом опубликованном скрипте.
Попробуйте онлайн
источник
PowerShell ,
4441 байтПопробуйте онлайн!
источник
Древесный уголь , 5 байтов
Попробуйте онлайн! Ссылка на подробную версию кода. Объяснение:
Введите число и выведите диагональную линию
\
s этой длины.Отразите линию вертикально.
источник
APL (NARS), 40 символов, 80 байтов
тестовое задание:
источник
Сетчатка 0.8.2 , 32 байта
Попробуйте онлайн! Объяснение:
Генерация двух строк
n
пробелов.Поверните верхнюю линию в
\
диагональ.Поверните нижнюю линию по
/
диагонали.источник
C (gcc) ,
6765 байт-2 байта благодаря потолку
Попробуйте онлайн!
источник
Python 2 ,
8584818075 байтПопробуйте онлайн!
источник
PowerShell , 50 байт
Попробуйте онлайн!
Посмотрим, как сделать это так, чтобы он проходил через диапазон только один раз. Не плохо для метода без мозга все же.
источник
Веточка, 115 байт
Строит строку в обратном направлении, «возвращая» ее в конце.
Использует макрос для генерации всех результатов.
Этот макрос должен быть в файле и импортирован так:
Вы можете попробовать его на https://twigfiddle.com/5hzlpz (нажмите «Показать необработанный результат»).
источник
Haskell ,
5249 байт-3 байта благодаря сриотчизму О'Зайку .
Попробуйте онлайн!
источник
g$n-1
вместоg(n-1)
. Вам также не нужно считать,f=
так как на негоf
никогда не ссылаются.MATL,
141312 байт1 байт сохранен благодаря @LuisMendo
объяснение
Попробуйте это в MATL Online
источник
Python 3 ,
9083 байтаПопробуйте онлайн!
-7 байт благодаря @squid
источник
Rockstar, 133 байта
Попробуйте онлайн здесь !
Поскольку Rockstar не славится строковыми операциями, для его выполнения требуется сравнительно много кода (рекурсивно - даже дольше).
Размер стрелки берется как ввод.
источник
PHP ,
796361 байтПопробуйте онлайн!
Рекурсивный в PHP.
-12 байт от @manatwork
источник
\ / \ /> 74 байта
Пояснение: (линии повернуты в зависимости от начальной точки)
источник
\/\/> (pronounced wɜrm)
Спасибо, я ненавижу это. (JK, я с нетерпением жду, чтобы попробовать)Python 3 , 55 байт
Попробуйте онлайн!
источник
Python 2 , 63 байта
Попробуйте онлайн!
источник
Stax , 10 байт
Запустите и отладьте его
источник
SimpleTemplate , 100 байт
Это было довольно забавное испытание, но некоторые ошибки в языке затрудняли его оптимизацию.
По сути, циклически перебрасывает значения в обратном направлении, обрабатывая строку посередине.
Каким должен быть ответ
Из-за ошибок код не был правильно интерпретирован.
Вот как будет выглядеть код, если бы в компиляторе не было ошибки (86 байт):
Ох, ну, по крайней мере, решение работает: x
источник
JavaScript (Node.js) , 42 байта (если разрешен трейлинг новой строки)
Попробуйте онлайн!
JavaScript (Node.js) ,
4846 байтПопробуйте онлайн!
источник