f = ConstantArray[" ", #] <> "" &;
Это примерно в два раза быстрее, чем функция Тис Хайдеке, , но не так быстро, как функция Шерда.
Для больших n
более длинная начальная строкаполезно.Это быстрее, чем метод Шёрда для n > 10000
:
f2ss = " "~ConstantArray~499 <> "";
f2[n_ /; n < 500] := StringTake[f2ss, n]
f2[n_ /; n < 5000] := StringTake[ConstantArray[" ", ⌈n/10⌉] <> "", n]
f2[n_] := StringTake[ConstantArray[f2@400, ⌈n/400⌉] <> "", n]