Menu
CoddyTech

Remove K Digits

Ti viene dato un numero non negativo scritto come stringa di cifre, num, e un intero k. Rimuovi esattamente k cifre e mantieni le altre nel loro ordine originale, in modo che il numero rimanente sia il più piccolo possibile.

Restituiscilo come stringa senza zeri iniziali. Se non rimane nulla o rimangono solo zeri, restituisci "0".

Funzione

removeKdigits(num: string, k: integer) → string
numstring
il numero, scritto come stringa di cifre
kinteger
quante cifre rimuovere
Restituiscestring
il numero più piccolo che puoi lasciare, come stringa senza zeri iniziali

Vincoli

  • 1 ≤ num.length ≤ 4 × 104
  • 0 ≤ k ≤ num.length
  • num contiene solo le cifre da 0 a 9.
  • num non ha zeri iniziali, tranne quando è il numero zero, "0".

Esempi

Input
num = "4325043"k = 3
Output
"2043"
Spiegazione
Eliminando il 4 e il primo 3, il 2 va davanti. Lo 0 non può essere in testa: davanti a lui ci sono quattro cifre e hai a disposizione tre rimozioni. L’ultima rimozione elimina il 5, che si trova prima di uno 0 più piccolo.
challenge icon

Per approfondire

Come modificheresti la soluzione per rimuovere k cifre e lasciare il numero più grande?

Ripristina il codice
def removeKdigits(num, k):
    # Scrivi il codice qui

Test #1

Test #2

Test #3

Argomenti

num = "4325043"
k = 3

Output atteso

"2043"