Add tasks for all the new languages

This commit is contained in:
Tina Müller 2016-12-05 23:44:36 +01:00
parent 9dc3c2bb62
commit bba7bfd280
13208 changed files with 134745 additions and 0 deletions

View file

@ -0,0 +1,30 @@
proc beadSort[T](a: var openarray[T]) =
var max = low(T)
var sum = 0
for x in a:
if x > max: max = x
var beads = newSeq[int](max * a.len)
for i in 0 .. < a.len:
for j in 0 .. < a[i]:
beads[i * max + j] = 1
for j in 0 .. < max:
sum = 0
for i in 0 .. < a.len:
sum += beads[i * max + j]
beads[i * max + j] = 0
for i in a.len - sum .. < a.len:
beads[i * max + j] = 1
for i in 0 .. < a.len:
var j = 0
while j < max and beads[i * max + j] > 0: inc j
a[i] = j
var a = @[5, 3, 1, 7, 4, 1, 1, 20]
beadSort a
echo a