Cod sursa(job #2624276)

Utilizator sorinnsgNeculae Andrei-Sorin sorinnsg Data 4 iunie 2020 17:41:52
Problema Radix Sort Scor 0
Compilator py Status done
Runda Arhiva educationala Marime 0.79 kb
f=open("radixsort.in",'r')
line=f.readline().split()
n=int(line[0])
a=int(line[1])
b=int(line[2])
c=int(line[3])
v=[0]*(n+1)
v[1]=b
for i in range(2,n+1):
    v[i]=(a * v[i - 1] + b) % c

v.pop(0)
def radixSort(v):
    if len(v) == 0:
        return "Vector nul"
    RADIX = 10
    placement = 1
    cifmax = max(v)
    while placement < cifmax:
      buckets = [list() for _ in range( RADIX )]
      for i in v:
        d = int((i / placement) % RADIX)
        buckets[d].append(i)
      a = 0
      for b in range( RADIX ):
        buck = buckets[b]
        for i in buck:
          v[a] = i
          a =a + 1
      placement = placement * RADIX
    return v
radixSort(v)
g=open("radixsort.out",'w')
for i in range(0,n,10):
    d=str(v[i])
    g.write(d)
    g.write(' ')