fork download
  1. def qs(letras, edades):
  2. if len(letras) < 2:return letras, edades
  3.  
  4. letrasME = []
  5. edadesME = []
  6. letrasMA = []
  7. edadesMA = []
  8.  
  9. for i in range(1, len(letras)):
  10. if edades[i] < edades[0] or (edades[i] == edades[0] and letras[i] > letras[0]):
  11. letrasME.append(letras[i])
  12. edadesME.append(edades[i])
  13. else:
  14. letrasMA.append(letras[i])
  15. edadesMA.append(edades[i])
  16.  
  17. return qs(letrasMA, edadesMA)[0] + [letras[0]] + qs(letrasME, edadesME)[0], qs(letrasMA, edadesMA)[1] + [edades[0]] + qs(letrasME, edadesME)[1]
  18.  
  19. # Ejemplo de uso
  20. letras = ["A", "B", "C", "D"]
  21. edades = [21, 37, 17, 21]
  22.  
  23. print(qs(letras,edades))
Success #stdin #stdout 0.03s 9620KB
stdin
Standard input is empty
stdout
(['B', 'A', 'D', 'C'], [37, 21, 21, 17])