#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<map>
#include<vector>
#include<queue>
#include<string>
using namespace std;
//注意只要某字符有一次重复出现的个数≠K的倍数,此键算好键
int main(){
string input,output="";
int K;
cin>>K>>input;
//==========处理hashTable===========
int hashTable[128]={0};//表示是不是坏键
//下标为字符,元素为1表示该字符是坏键,为-1表示该字符好键,0表示该字符还没遇到过
for(int i=0;i<input.size();){
int j=i+1;
while(j<input.size()&&input[j]==input[i])
++j;//找到i位置后第一个不等于input[i]的字符位置
if(hashTable[input[i]]>=0)//当前的input[i]是坏键
hashTable[input[i]]=(j-i)%K==0?1:-1;
//通过连续出现的input[i]的个数是否是K的倍数给hashTable赋值1、-1
i=j;
}
//===========输出过程=============
bool out[128]={false};//表示字符是否已被输出过
for(int i=0;i<input.size();){
output+=input[i];//将当前字符加入正确的字符串中
if(hashTable[input[i]]>0){//是坏键
if(!out[input[i]]){//没被输出过
printf("%c",input[i]);//输出此键
out[input[i]]=true;//此坏键已被输出过
}
i+=K;//跳跃K个
}else if(hashTable[input[i]]<0)//是好键
++i;//继续
}
cout<<endl<<output;//输出正确的字符串
system("pause");
return 0;
}