C. Alphabetic Removals
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

You are given a string k times:

  • if there is at least one letter 'a', remove the leftmost occurrence and stop the algorithm, otherwise go to next item;
  • if there is at least one letter 'b', remove the leftmost occurrence and stop the algorithm, otherwise go to next item;
  • ...
  • remove the leftmost occurrence of the letter 'z' and stop the algorithm.

This algorithm removes a single letter from the string. Polycarp performs this algorithm exactly k characters.

Help Polycarp find the resulting string.

Input

The first line of input contains two integers 1≤k≤n≤4⋅105) — the length of the string and the number of letters Polycarp will remove.

The second line contains the string n lowercase Latin letters.

Output

Print the string that will be obtained from k times.

If the resulting string is empty, print nothing. It is allowed to print nothing or an empty line (line break).

Examples
input
Copy
15 3
cccaabababaccbc
output
Copy
cccbbabaccbc
input
Copy
15 9
cccaabababaccbc
output
 
cccccc
input
 
1 1
u
output
u
 
题意:给你一个字符串,你可以对这个字符串做k次操作,每次操作遵循这个规则:从a开始删除、删完a后删b...一直删到z
题解:用一个数组来存字符串中各个字母的个数,然后从a开始删,记录到不能删除的那个位置然后用另一个字符串来保存输出
代码如下
#include<bits/stdc++.h>
using namespace std;
int n;
string str;
int k;
vector<int> cnt(26);
int main() {


    cin>>n>>k;
    cin>>str;

    for(int i=0; i<n; i++) {
        cnt[str[i]-'a']++;
    }
    //记录下每个字母的数量
    //从a开始减去存在的字母
    //如果没有了  就记录下还可以输出的字母
    int pos=26;
    for(int i=0; i<26; i++) {
        if(k>=cnt[i]) {
            k-=cnt[i];
        } else {
            pos=i;
            break;
        }
    }

    string ans;
    int rem=k;
    for(int i=0; i<n; i++) {
        int cur=str[i]-'a';
        //在pos后面的字母可以用
        //用完了k的字母可以用
        
        if(cur>pos||(cur==pos&&rem==0)) {
            ans+=str[i];
        } else if(cur==pos) {
            rem--;
        }
    }
    cout<<ans<<endl;

    return 0;
}
View Code

 


 

相关文章: