[CF771B] Bear and Different Names 的题解
思路
首先假设所有的名字都是不一样的,所以在遇到 的时候就不需要进行处理。
当遇到 的时候,可以直接假设 。这样假设有一个好处,因为当在访问 的时候, 就不会被考虑了,所以即使是 也不会影响。
注意:翻译并没有翻译出名字的长度 ,应该满足 。
AC Code
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=100;
int n,k;
char c[N];
vector<char> ans[N];
signed main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin>>n>>k;
for(int i=1;i<=n;i++){
ans[i].push_back(i%26+'A');
ans[i].push_back((i+i/26)%26+'a');
}
for(int i=1;i<=n-k+1;i++){
cin>>c;
if(c[0]=='N') ans[i+k-1]=ans[i];
}
for(int i=1;i<=n;i++){
for(char j:ans[i]){
cout<<j;
}
cout<<' ';
}
return 0;
}