i-1字符串是pre,
则第i个是pre+第i字母+pre
明显是dp,
看了下网上用的是递归
这里巧用了char【】存字符,再string+char【】来把字符转化为字符串
#include<bits/stdc++.h>
using namespace std;

int n;
char str[1];
string s,pre;

int main(){
	cin>>n;
	s="A"; 
	for(int i=2;i<=n;i++){
		pre=s;
		str[0]='A'+i-1;
		s+=str;
		s+=pre;
	}
	cout<<s<<endl;
	return 0;
} 
递归好写,但却比较难想
#include<bits/stdc++.h>
using namespace std;

int n;

void dfs(int x){
	if(x==1) cout<<"A";
	else{
		dfs(x-1);
		cout<<(char)(x-1+'A');
		dfs(x-1);
	}
}
int main(){
	cin>>n;
	dfs(n);
	cout<<endl;
	return 0;
}