- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
N = 5
$mas = (1..N).to_a
$c = 0
def generate(l = 0)
if l == N-1
for i in 0..N-1 do
print("#{$mas[i]} ")
end
$c += 1; print("\n")
else
for i in l..N-1 do
t = $mas[l]; $mas[l] = $mas[i]; $mas[i] = t;
generate(l+1)
t = $mas[l]; $mas[l] = $mas[i]; $mas[i] = t;
end
end
return $c
end
p generate(0);
degenerate более к месту
Вполне очень даже. Все чистенько и понятно.
И я даже знаю где ты код взял.
В общественном сортире, amarite?
Из однобуквенных переменных l одна из самых худших. Очень часто она похожа на единицу.