Вызов:
Учитывая положительное целое число n , создайте вектор, который следует этому шаблону:
0 1 0 -1 -2 -1 0 1 2 3 2 1 0 -1 -2 -3 -4 -3 -2 -1 ... ±(n-1) ±n
Или, поясняется словами: вектор начинается с 0
и делает приращения 1
до тех пор, пока не достигнет наименьшего нечетного положительного целого числа, которое не является частью последовательности, затем он будет уменьшаться, пока не достигнет наименьшего (по величине) даже отрицательного целого числа, которое не является не часть последовательности. Это продолжается до тех пор, пока не n
будет достигнуто. Последовательность закончится положительным, n
если n
нечетное, и отрицательным, n
если n
четное.
Выходной формат гибкий.
Тестовые случаи:
n = 1
0 1
-----------
n = 2
0 1 0 -1 -2
-----------
n = 3
0 1 0 -1 -2 -1 0 1 2 3
-----------
n = 4
0 1 0 -1 -2 -1 0 1 2 3 2 1 0 -1 -2 -3 -4
-----------
n = 5
0 1 0 -1 -2 -1 0 1 2 3 2 1 0 -1 -2 -3 -4 -3 -2 -1 0 1 2 3 4 5
Вы можете выбрать n с нулевым индексом. n = 1
тогда бы дал 0 1 0 -1 -2
.
Это код-гольф , поэтому выигрывает самый короткий код на каждом языке! Пояснения приветствуются как всегда!