FJ的字符串(C++)
资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
FJ在沙盘上写了这样一些字符串:
A1 = “A”
A2 = “ABA”
A3 = “ABACABA”
A4 = “ABACABADABACABA”
… …
你能找出其中的规律并写所有的数列AN吗?
输入格式
仅有一个数:N ≤ 26。
输出格式
请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。
样例输入
3
样例输出
ABACABA
解题思路
把字符串AN看成三部分:最中间的一个字母(同时是最大字典序的字母)和它的左半部分与右半部分。
那么左半部分和右半部分都是A(N-1)。
例如当N = 2时,A2 = ABA,左边与右边部分都是A,都是A1字符串。中间再加上’A’+N-1即可。
#include<bits/stdc++.h>
using namespace std;
string str = "";
int main(){
int n;
cin>>n;
for(int i = 0; i<n; i++){
char c = 'A' + i;
str = str + c + str;
}
cout<<str<<endl;
return 0;
}