题目
略
简单的贪心
#include <iostream>
#include <cstring>
using namespace std;
const int N=2003;
int n,k,len;
int c[30];
char s[N];
int main(){
int cas; cin>>cas;
while(cas--){
memset(c,0,sizeof c);
cin>>n>>k; len=n/k;
cin>>s+1;
int i,j;
for(i=1;i<=n;i++){
c[s[i]-'a']++;
}
for(i=1;i<=k;i++){
int cnt=0,ans=-1;
for(j=0;j<26;j++){
if(cnt==len){
if(ans==-1) ans=j; break;
}
else if(c[j]==0){
if(cnt==len){
ans=j; break;
}
else if(ans==-1) ans=j;
}
else c[j]--,cnt++;
}
cout<<char(ans+'a');
}
cout<<endl;
}
}