Ich kann den Wert der kleinsten Ganzzahl "k" in der Anzahl "n" von Ganzzahlen in einer Liste nicht finden [Duplikat]

Dec 02 2020
n = input('print n:')
k = input('print k')
a = input('print'+str(n)+'numbers:')
s = str(a)
Lst = s.split()
map_object = map(int, Lst)
lst = list(map_object)

Ich habe den Rest erledigt und weiß nicht, wie ich die k kleinste ganze Zahl finden und drucken kann.

Eingänge:

10 (n) 3 (k)

1 3 3 7 2 5 1 2 4 6 (n Anzahl von Zahlen)

Ausgänge:

3

Antworten

2 Tuqay Dec 02 2020 at 05:51

Sie können doppelte Zahlen haben, also werden wir sie zuerst entfernen, indem wir Folgendes verwenden set():

no_duplicates = set(lst)

Dann sortieren wir es, wodurch wir eine sortierte Liste erhalten:

sorted_list = sorted(no_duplicates)

Dann erhalten wir Ihre gewünschte Nummer (Sie haben nicht kin int konvertiert , also werden wir es hier tun):

kth_smallest = sorted_list[int(k)-1]