Geeksforgeeks

Error

×

Leaderboard

Showing:

Handle | Score |
---|---|

@Ibrahim Nash | 6420 |

@blackshadows | 6376 |

@mb1973 | 5594 |

@Quandray | 5231 |

@akhayrutdinov | 5111 |

@saiujwal13083 | 4510 |

@sanjay05 | 3762 |

@kirtidee18 | 3673 |

@marius_valentin_dragoi | 3522 |

@sushant_a | 3459 |

@verma_ji | 3412 |

Complete Leaderboard | |

Handle | Score |

@codersgroup18 | 783 |

@Manikanta punnam | 605 |

@sriramgoparaju99 | 582 |

@rdakka | 530 |

@praveenbgp6 | 529 |

@prankursharma31 | 518 |

@yashkaril4 | 517 |

@purohitmn02 | 467 |

@sonamnigam1999 | 443 |

@sonamkumari63928 | 441 |

@shubhamstudent5 | 433 |

Complete Leaderboard |

Given a non-negative integer S represented as a string, remove K digits from the number so that the new number is the smallest possible.

**Note : **The given *num* does not contain any leading zero.

**Example 1:**

**Input:**
S = "149811", K = 3
**Output:** 111
**Explanation**: Remove the three digits
4, 9, and 8 to form the new number
111 which is the smallest.

â€‹**Example 2:**

**Input**:
S = "1002991", K = 3
**Output:** 21
**Explanation**: Remove the three digits
1(leading one), 9, and 9 to form the
new number 21(Note that the output
must not contain leading zeroes)
which is the smallest.

**Your Task:**

You don't need to read input or print anything. Your task is to complete the function **removeKdigits() **which takes the string S and an integer K as input and returns the new number which is the smallest possible.

**Expected Time Complexity: **O(|S|).

**Expected Auxiliary Space: **O(|S|).

**Constraints:**

1<=|S|<=10002

1<=K<=|S|

Login to report an issue on this page.

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

Yes
Remove K Digits

...