Geeksforgeeks

Error

×

Leaderboard

Showing:

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

@Ibrahim Nash | 6420 |

@blackshadows | 6380 |

@mb1973 | 5704 |

@Quandray | 5245 |

@akhayrutdinov | 5111 |

@saiujwal13083 | 5046 |

@sanjay05 | 3762 |

@kirtidee18 | 3673 |

@marius_valentin_dragoi | 3523 |

@mantu_singh | 3510 |

@sushant_a | 3459 |

Complete Leaderboard | |

Handle | Score |

@cfwong8 | 1134 |

@gurshehzadsingh | 676 |

@nithinreddy3210 | 610 |

@Run_for_life | 570 |

@divyagupta221100 | 557 |

@jha8768 | 553 |

@AkashLahoty | 537 |

@aayushdesai01 | 526 |

@riyakumaribkj | 524 |

@amansinha74458 | 503 |

@dreamerdreamer | 488 |

Complete Leaderboard |

Given a string of lowercase alphabets and a number k, the task is to find the minimum **value** of the string after removal of ‘k’ characters.

The **value** of a string is defined as the sum of squares of the count of each distinct character.

For example consider the string “geeks”, here frequencies of characters are g -> 1, e -> 2, k -> 1, s -> 1 and value of the string is 1^{2 }+ 2^{2 }+ 1^{2 }+ 1^{2} = 7

**Example 1:**

**Input: **S = "abccc", K = 1
**Output:** 6
**Explanation**: Remove one 'c', then frequency
will be a -> 1, b -> 1, c -> 2.
1^{2 }+ 1^{2 }+ 2^{2 }= 6

â€‹**Example 2:**

**Input**: S = "aaab", K = 2
**Output:** 2
**Explanation**: Remove 2 'a's, then frequency
will be a -> 1, b -> 1.
1^{2 }+ 1^{2}^{ }= 2

**Your Task: **

You don't need to read input or print anything. Your task is to complete the function **minValue()** which takes the string **s **as inputs and returns the answer.

**Expected Time Complexity:** O(K*log(|S|))

**Expected Auxiliary Space:** O(constant)

**Constraints:**

1 ≤ K, |S| ≤ 10^{4}

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?

YesLoading...

Minimize string value

...