Cod sursa(job #2618032)
Utilizator | TUDOSE MIHAI-CRISTIAN jungle | Data | 23 mai 2020 15:34:55 |
---|---|---|---|
Problema | Statistici de ordine | Scor | 50 |
Compilator | py | Status | done |
Runda | Arhiva educationala | Marime | 0.53 kb |
import random
def quick(A,k):
piv = random.choice(A)
L = [x for x in A if x < piv]
E = [x for x in A if x == piv]
G = [x for x in A if x > piv]
if(k < len(L)):
return quick(L,k)
elif k < len(L) + len(E):
return E[0]
else:
return quick(G,k-len(L)-len(E))
f = open("sdo.in")
g = open("sdo.out","w")
aux = f.readline().split()
n = int(aux[0])
k = int(aux[1])-1
v = []
aux = f.readline().split()
for i in range(n):
v.append(int(aux[i]))
g.write(str(quick(v,k)))