16分
我真的尽力了!!什么鬼啊,为啥还有两个点不过
再写心态就炸了
set.find找不到返回set.end()
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <iostream>
#include <string>
#include <cctype>
#include <vector>
#include <cstring>
#include <set>
#include <map>
using namespace std;
int n;
set<char> ans1,ans;
string input,no;
int main()
{
cin >> n;
cin >> input;
int tt = 1;
for(int i=1; i<input.length(); i++){
//cout << input[i] << " i " << input[i-1] << endl;
//cout << tt << endl;
if(input[i]!=input[i-1]) {
if(tt%n!=0){
//cout << tt << " " << input[i-1] << endl;
ans1.insert(input[i-1]);
}
tt = 1;
}
else{
tt+=1;
}
}
if(tt%n!=0) ans1.insert(input[input.length()-1]);
set<char>::iterator it;
for(int i=0; i<input.length(); i++){
if(ans1.find(input[i])==ans1.end()) ans.insert(input[i]);
}
for(it = ans.begin(); it != ans.end(); it++){
cout << *it;
}
cout << endl;
int sum = 0;
for(int i=0; i<input.length(); i++){
if(ans1.find(input[i])!=ans1.end()){
cout << input[i];
}
else{
sum++;
if(sum%n==0){
cout << input[i];
sum = 0;
}
}
}
return 0;
}